Вернуться   Дизайнерский форум » ВЕБ-ПРОГРАММИРОВАНИЕ » HTML, CSS, JavaScript

О стилях програмирования...

Обсуждение темы О стилях програмирования... в разделе HTML, CSS, JavaScript, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; Не знаю... Просто выпил чашку кофе и мне пришла в голову мысль, что я всё это время при написании скриптов страдал хуйнёй (пардон ...


Закрытая тема
 
Опции темы
Старый 27.12.2003, 04:21   #1
Не знаю... Просто выпил чашку кофе и мне пришла в голову мысль, что я всё это время при написании скриптов страдал хуйнёй (пардон другого слова не подобрал). Часто сталкивался с проблемой организации скрипта. Что бы я с течением времени мог легко понять, что делает мой код, а ещё того хуже править его. И не только его, но и HTML. До этого момента я писал приблизительно так:
PHP код:
<?
    session_start
();
    require(
"myfuns.php");
?>
<HTML>
<BODY>
<?PHP
    
if(LoginISValid($_SESSION["Login"]))
    {
        echo 
"Добро пожаловать...";
        echo 
GetPage(0);
    }
    else
    {
        echo 
"Вы не авторизированы, пожалуйста укажите логин и пароль...";
        echo 
GetLoginForm();
    }
?>
</BODY>
</HTML>
Естественно с ростом кода, читабильность его жутко снижалась. Он разбрасывался по всему документу. Между HTML тегами. И его редактирование, да и вообще написание становилось "трудным"...
А чего мне пришло в голову? Написать так:
PHP код:
<?
    session_start
();
    require(
"myfuns.php");
    
$main=null//Что-то.. Какой-то текст, где-то дальше...
    
$msg=null//Сообщение, где-то в загаловке или ещё где-то...
    
if(LoginISValid($_SESSION["Login"]))
    {
        
$msg="Добро пожаловать...";
        
$main=GetPage(0);
    }
    else
    {
        
$msg="Вы не авторизированы, пожалуйста укажите логин и пароль...";
        
$main=GetLoginForm();
    }
?>
<HTML>
<BODY>
    <? echo $msg ?>
    
    <? echo $main ?>
</BODY>
</HTML>
А собственно. У кого какой почерк? Кто знает какие-то приколы, для того что бы упростить читабельность кода? И какие заподлянки меня здесь ждут? И вообще кто так пишет? Или что по этому поводу думает?

Буду очень рад услышать ваши ответы...
 
Старый 27.12.2003, 04:21
Ссылки
Старый 27.12.2003, 10:58   #2
да впринципе я также пишу мне так удобно - хотя есть варианты и получше. Шаблоны например
 
Старый 27.12.2003, 14:48   #3
Dis

Я коментарии к строкам не пишу ... я разбиваю код на блоки коментариями, типа :
// класс такой-то
.....
//--------------------------------
//проверка вводимых данных
.......
//---------------------------------
// проверка прав доступа
........
//---------------------------------
 
Старый 27.12.2003, 15:28   #4
А что тут советовать. Пиши аккуратнее.
Вот пример кода (ObjectPascal - но это не важно...)
Код:
Memo2.Lines.Text:=HTTP.Get('http://7561.chatcity.ru/cgi-bin/vlog.cgi?c=7561&md='+inttostr(md)+'&pg='+inttostr(i)+'&ln=200');

 for kol:=strtoint(na.Text) to strtoint(ko.Text) do
 begin
  try
    begin
     Application.ProcessMessages;
     StatusBar1.Panels[0].Text:=' Ñêà÷èâàåòñÿ ñòðàíèöà #' + IntToStr(i);
      //Äîáàâëåíèå â Memo1 òîëüêî ñòðîêè ðàçãîâîðà
     for i2:=31 to Memo2.Lines.Count-5 do Memo1.Lines.Add(Memo2.Lines[i2]);
     i := i+1;
     Memo2.Lines.Text:=HTTP.Get('http://7561.chatcity.ru/cgi-bin/vlog.cgi?c=7561&md='+inttostr(md)+'&pg='+inttostr(i)+'&ln=200');
    end;
   except
    break;
  end;
 end;
.....
или хтмл
Код:
       

      <tr>
       <td colspan=8>
        <table cellspacing=0 cellpadding=0 width=780 border=0>
         <tr>
          <td width=217 height=18></td>
          <td class=foot width=563 background="img/mnu_foot.gif" height=18>
           <p class=mf>
            Главная|
            Услуги и цены|
            Портфолио|
            Партнёрам|
            Заказать|
            Контакты

           </p>
          </td>
         </tr>
         <tr>
          <td width=780 background="img/footer.gif" bgcolor=#4f7c53 colspan=2 height=40>
           <table cellSpacing=0 cellPadding=0 width=780 border=0>
            <tr>
             <td valign=middle>
              <script language="JavaScript"><!--
              d=document;var a='';a+=';r='+escape(d.referrer)
....
Vulko добавил [date]1072528335[/date]:
Что за хрень? Код стал другим - исчезли пробелы в строках... Блин!
 
Старый 27.12.2003, 15:33   #5
Делать надо не так как скажут, а как сомому удобнее и проще, зачем лесть в дебри если привык ходить в обход!!!
 
Старый 27.12.2003, 18:24   #6
Я просто про, то что может кто-небудь поделиться опытом. Просто подскажет как удобней...
 
Старый 28.12.2003, 14:00   #7
Spy

явно лучше ставить таб, при разных там проверках и символах {
у меня Crimson editor сам сдвигает на один таб, напр при
if ($file){
******$a=$b;
}
 
Старый 29.12.2003, 01:02   #8
Да нет ну это понятно... Я ж так и пишу...
 
Старый 29.12.2003, 23:07   #9
Есть какие-то там венгерские правила... чёто в этом роде касается программирования. Там как раз про это.

Я чаще в Си пишу чем в PHP, но язык то по синтаксису один и тот же...
У меня такое правила:
все if,for и т.д. пишутся так:
PHP код:
if(условие)
  {
  (
обязательно 2 пробела и потом уже операторы);
  
operator1;
  
operator2;
  ...
  } 
В этом случае отлично видна вложенность конструкций. А вот в этот пример, приведённый здесь - это ужас ходячий - ну как здесь разобрать что где:

PHP код:
Memo2.Lines.Text:=HTTP.Get('http://7561.chatcity.ru/cgi-bin/vlog.cgi?c=7561&md='+inttostr(md)+'&pg='+inttostr(i)+'&ln=200');

for 
kol:=strtoint(na.Textto strtoint(ko.Text) do
begin
try
begin
Application
.ProcessMessages;
StatusBar1.Panels[0].Text:=' Ñêà÷èâàåòñÿ ñòðàíèöà #' IntToStr(i);
//Äîáàâëåíèå â Memo1 òîëüêî ñòðîêè ðàçãîâîðà
for i2:=31 to Memo2.Lines.Count-do Memo1.Lines.Add(Memo2.Lines[i2]);
:= i+1;
Memo2.Lines.Text:=HTTP.Get('http://7561.chatcity.ru/cgi-bin/vlog.cgi?c=7561&md='+inttostr(md)+'&pg='+inttostr(i)+'&ln=200');
end;
except
break;
end;
end
Да нифига не разберёшь.Я бы такой код писал вот так:
PHP код:
Memo2.Lines.Text:=HTTP.Get('http://7561.chatcity.ru/cgi-bin/vlog.cgi?c=7561&md='+inttostr(md)+'&pg='+inttostr(i)+'&ln=200');

for 
kol:=strtoint(na.Textto strtoint(ko.Text) do
  
begin
  
try
    
begin
    Application
.ProcessMessages;
    
StatusBar1.Panels[0].Text:=' Ñêà÷èâàåòñÿ ñòðàíèöà #' IntToStr(i);
    
//Äîáàâëåíèå â Memo1 òîëüêî ñòðîêè ðàçãîâîðà
    
for i2:=31 to Memo2.Lines.Count-do Memo1.Lines.Add(Memo2.Lines[i2]);
    
:= i+1;
    
Memo2.Lines.Text:=HTTP.Get('http://7561.chatcity.ru/cgi-bin/vlog.cgi?c=7561&md='+inttostr(md)+'&pg='+inttostr(i)+'&ln=200');
    
end;
    
except
      
break;
  
end;
end
Так помоему и красивше и понятней.
Только название темы надо поменять. Стиль программирования - это совсем другое.
 
Старый 30.12.2003, 01:36   #10
Венгерсоке правило тоже юзаем. Оно очень часто в C++ - MFC употребляеться в названии классов и их методов. А в ПХП всё маленькими будвками и через _. Странно как-то... Ну короче этим всем пользуемся и уже давно.

Да кстати о сесиях. Кто как?
1) session_register()
2) $_SESSION
 
Старый 30.12.2003, 01:36
Закрытая тема




Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите, пожалуйста разобраться в стилях tritobunibuni HTML, CSS, JavaScript 4 18.05.2011 06:28
Кто из вас разбирается в стилях музыки? fanat_92 Кальянная 9 15.05.2008 19:11


Текущее время: 14:09. Часовой пояс GMT +4.

Реклама на форуме Условия размещения рекламы
Биржа ссылок Заработай на сайте!
Дизайнерский форум