Archive for March, 2009

Изкарах Phlame 0.2.00-beta, но…..

Sunday, March 29th, 2009

Преди ден два изкарах 0.2.00-beta на Phlame Web Server. Много ентусиазиран, че работи CGI и направо лети реших да я пусна. След като починах, реших да го тествам за Windows. Пуснах го и хоп всичко вървеше както под Linux (уж). След редица тестове разбрах, че CGI-а не работи. По-скоро заявката не обработваше всички входни и изходни хедъри… това се реши.

Следващия и най-гаден за момента проблем е, че конзолата под Windows работи само и само в blocking режим, с което блокира работата на сървара с потребителите докато не въведа нещо от клавиатурата. След дълга и усилена работа след като компилирах една библиотека, отстраних този проблем.

Време е да пусна 0.2.03. Това ще е много скоро.

Купих си знаме.

Friday, March 27th, 2009

Да, наистина. Купих си знаме (150см на 90см).
Това по начало си го бях поставил за задача с “основаването” на НАПУК, но чак сега се стекоха обстоятествата да имам пари и да си спомня за тази задача, която си бях поставил.
Това, че си купих знаме, не ме прави кой знае какъв патриот, но все пак е стъпка.

България над всичко!

Насоки при писане на код – наименувания

Thursday, March 26th, 2009

Нека започна с това, че това са моите виждания за добре подреден код и не сте длъжни да ги спазвате. Вие сте програмистите и вие решавате какво да правите.

Като за начало да запозная с основни термини:

Шльокавица – това е, когато нещо на български е изписано с латински букви. На пример – 6lyokavitza..
PascalCase – начин на изписване, когато думите са слепени и всяка дума започва с голяма буква.
camelCase – като PascalCase, само че първата дума започва с малка буква.

Основа:
Писането на “шльокавица”, е недопустимо.
Коментарите може да са на бългаски с кирилица или английски с латиница.
Всичко останало е по-прилежно да е на английски, защото повечето термини, техники и неща в ИТ произлизат от английски език и притежават по-голяма конкретност, а и са придобили по-голяма популярност.

Променливи:
Променливите и параметрите на функции трябва да бъдат в camelCase:
$firstVariable, $secondVariable
Параметрите на функции, ако са параметри променливи (т.е. се предават с референция) са предхождани от малка буква “r” (reference):
&$rReferencedVariable

Абревиатури:
Когато абревиятурата е с повече от две букви (HTML), то в camelCase, тя се изписва с първа главна и останалите млаки букви.
$asyncHttpRequest
За сметка на това, другите съкращения, като UI, OS си запазват форматирането.

Класове:
Прието е наименуванията на класовете да бъде в PascalCase, членовете на обекта/класа се изписват както променливите, изключение се прави когато има полиморфизъм на членовете на обекта и с цел да няма сблъсъци, тогава се слага “m” (member) пред члена (public $mProperty;).
Наименуванията на методите и свойствата следват camelCase.
Ако свойството или метода има достъп protected или private, тогава се слага “_” (долна черта) преди името. При членове започващи с “m”, може да отпадне.

class HtmlGenerator
{
    public $elements = array('div');
    protected $_hidden = 'hidden';

    public function generateHtml()
    {
        ...
    }
    protected function _parseHtml($html)
    {
        ...
    }
}

[ В процес на дописване и доизясняване на стила на писане ]