🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.objects
Article #17458

Re: Propozycja nazewnictwa i oznaczeń kodu w językach obiektowych

#17458
From: klops
Date: Wed, 22 Sep 2010 06:03
62 lines
3977 bytes
W dniu 2010-09-15 14:48, sereka@gazeta.pl pisze:
> On Mon, 13 Sep 2010 20:32:58 +0200
> klops<klops@klopsserver.pl>  wrote:
>
>> Nazewnictwo proste, logiczne i superskuteczne!!!
>> http://nazewnictwo.cba.pl/
>
> hmm... parę uwag z mojej strony :D
>
> wg mnie, zaproponowane nazewnictwo zmiennych, (przyrostki 'g-', 'm-', 'l-', 'a-', ...)
> tylko zaciemniają obraz i napewno nie dążą do utworzenia prostego i przejrzystego kodu:

Może nie doążą do prostego i przejrzystego kodu, ale czynią kod prostym 
i przejrzystym

> 1) Istnieje dodatkowa praca przy wpisywaniu odpowiednich przyrostków.

Ale robota! Jeden dodatkowy znak i wciśnięcie klawisza Shift przy 
pisaniu reszty nazwy zmiennej.

> 2) Zastosowanie przyrostków zmniejsza potrzebę tworzenia unikalnych nazw,
>     co ułatwia powstawanie nieczytelnych 'potworków':
>
> int changeValue(int aValue) {
> 	int lValue = mValue;
> 	mValue = aValue;
> 	return lValue;
> }

Wg mnie to jest super czytelne i od razu widać co się dzieje. A jak 
chcesz se dopisywać old i new to możesz zapisać:
  int changeValue(int aNewValue) {
  	int lOldValue = mValue;
  	mValue = aNewValue;
  	return lOldValue;
  }
Tle że dopisywanie new i old jest kosztowniejsze od pisania m, a, l.

> 3) Rozumiem, że zastosowanie przyrostków ma ułatwić odgadnięcie rodzaju zmiennej po jej nazwie,
>     co ma zmniejszyć liczbę potencjalnych pomyłek w dużym kodzie. W małym kodzie natomiast nie
>     widać tego ułatwienia, gdyż na pierwszy rzut oka widać, czy zmienna jest zmienną lokalną, globalną,
>     parametrem funkcji czy też zmienną klasy.

Akurat! Szczególnie w programach Unixowych tego za cholerę nie widać!

>     Osobiście należę do szkoły w myśl której, programmy powinno się pisać jak najprościej (KISS)

Właśnie proponowany sposób oznaczania kodu jest jak najbardziej KISS. A 
z resztą te oznaczenia nie mają żadnego związku z architekturą programu 
czyli nie wpływają na komplikacje, czyli nie są przeciw KISS!

>     w związku z tym podejrzliwie patrzę na wszystkie czynności, które zbytnio ułatwiają powstawanie
>     dużych i skomplikowanych porcji kodu.

Na obecnym etapie podejrzewam, że jeszcze nie jedno uproszczenie i 
ułatwienie można będzie wymyśleć.

> 4) Występowanie przyrostków nieznacznie, ale utrudnia refaktoring - przy zmianie rodzaju zmiennej
>     (np. zmienną globalną zamieniamy na zmienną klasy) musimy dodatkowo zmienić nazwę zmiennej.

To fajowe zminiać zmienne globalne na zmienne klasy! Znaczy, że ktoś nie 
źle spaprał projekt. A naprawa tego musi kosztować - bez cuduw!
Technical Details
Message-ID: <4c99ffe8$0$22806$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!lublin.pl!uw.edu.pl!newsgate.cistron.nl!newsgate.news.xs4all.nl!194.109.133.84.MISMATCH!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!feeder.news-service.com!feeder1.cambriumusenet.nl!feed.tweaknews.nl!209.197.12.246.MISMATCH!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <4c8e6e5a$0$22799$65785112@news.neostrada.pl> <20100915134841.18b39fed@canis>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!lublin.pl!uw.edu.pl!newsgate.cistron.nl!newsgate.news.xs4all.nl!194.109.133.84.MISMATCH!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!feeder.news-service.com!feeder1.cambriumusenet.nl!feed.tweaknews.nl!209.197.12.246.MISMATCH!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Wed, 22 Sep 2010 08:03:44 +0200
From: klops <klops@klopsserver.pl>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; pl; rv:1.9.2.9) Gecko/20100915 Thunderbird/3.1.4
MIME-Version: 1.0
Newsgroups: pl.comp.objects
Subject: Re: Propozycja nazewnictwa i oznaczeń kodu w
 językach obiektowych
References: <4c8e6e5a$0$22799$65785112@news.neostrada.pl> <20100915134841.18b39fed@canis>
In-Reply-To: <20100915134841.18b39fed@canis>
Lines: 62
Message-ID: <4c99ffe8$0$22806$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.11.60.25
X-Trace: 1285160936 unt-rea-b-01.news.neostrada.pl 22806 83.11.60.25:52638
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit