КодоБред

индекс
152,70

Статика в языке программирования: что кроме типов?

Известно, что языки программирования бывают статические и динамические. В статических языках типы всех значений известны в момент компиляции. В результате компилятор может проверить, правильно ли используется значение, применима ли к нему та или иная операция. Узнавать об ошибке в момент компиляции приятнее, чем во время исполнения — меньше ошибок выйдет при тестировании и дойдет до пользователя. За это ошибок и ценят статические языки.

Но почему дело ограничивается только типами данных? Попробуем немного по-фантазировать, что еще мог бы делать компилятор.
–2
25 июля 2011, 20:12
3

Обнови свой браузер!

Решил поинтересоваться у Яндекса как определить браузер посетителя (на PHP).
Вторая ссылка привела на «замечательный» пример скрипта.

<?
//Для начала назначаем переменные

.if(eregi("opera",$HTTP_USER_AGENT))// Если у тебя Опера, то переменная $browse = OP
$browser = "OP";

else if(eregi("msie",$HTTP_USER_AGENT))// Если у тебя MSIE, то переменная $browse = IE
$browser = "IE";

else if(eregi("Mozilla.[4.]",$HTTP_USER_AGENT))
$browser = "NS";

else if(eregi("Mozilla.[5|6]",$HTTP_USER_AGENT))
$browser = "MO";
else // если что-то другое , то OT
$browser = "OT";
?>
//Все . Закончили с определением. Мы уже знаем какой у тебя браузер. Теперь выведеминфу о тебе.

<? if ($browser=="IE") {
echo "Internet Explorer";//Если ie, то пишет Internet Explorer
}
if ($browser=="OP") {
echo "Opera!
Обнови свой броузер и перестань морочить голову дизайнерам всякой межбраузерностью!
";
}
if ($browser=="NS") {
echo "Netscape!
Обнови свой броузер и перестань морочить голову дизайнерам всякой межбраузерностью!
";
}
if ($browser=="MO") {
echo "Mozilla! Обнови свой броузер и перестань морочить голову дизайнерам всякой межбраузерностью!";
}
if ($browser=="OT") {
echo "А что у вас за Browser?";//если OT то пишет ...
}
?>


Обнови свой броузер!

источник
–16
23 ноября 2009, 10:15
3

Очередной перл выданный индусами.

Попался мне код, писанный одним индусом, а если точнее то мне было лень проверять в C# является ли строка числом с помощью метода TryParse и я решил посмотреть есть ли более «короткий» способ. вот на что я наткнулся

for (int i=0; i<this.textbox1.text.length; i++)
{
  if (char.IsDigit(this.textbox1.text[i])==false)
    // give any error
}


* This source code was highlighted with Source Code Highlighter.


Я конечно понимаю, что это «оптимизированный» метод на основе Replace, но всё равно забавно :).
–3
17 декабря 2008, 19:34

Валидный код

1.
string[] strs = new List<string>().ToArray();

* This source code was highlighted with Source Code Highlighter.


2.
class MyClass
{
   int a;
   public MyClass(int a)
   {
      try
      {
         this.a = a;
      }
      catch (Exception ex)
      {
         logger.Error(ex);
      }
   }
}


* This source code was highlighted with Source Code Highlighter.
–4
1 августа 2008, 13:39

Железная логика

if VerifyStructure(avDetails) == TRUE
	bStructure = TRUE
else
	bStructure = FALSE

if VerifyStatement(avDetails) == TRUE
	bStatement = TRUE
else
	bStatement = FALSE

Обе функции по спецификации возвращают строго boolean

–3
4 июля 2008, 13:25