🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.ruby
Article #1086

Re: ruby - wrażenia i pytania

#1086
From: Przemysław Kowalczyk
Date: Sun, 18 May 2008 08:39
128 lines
6465 bytes
On Sat, 17 May 2008 19:05:27 +0200, Marcin Gryszkalis <mg@fork.pl> wrote:
>
>> zapomnij o IDE (ja uzywalem Eclipse). najlepszy jest dobry, lekki edytor
>> (w pracy uzywamy TextMate) plus porzadne srodowisko z linia polecen  
>> (czyli
>> bash z odpowiednimi skrotami, aliasami itp.) im szybciej pozbedziesz sie
>> naiwnej wiary, ze IDE jest Ci do czegos potrzebne w Rubym, tym lepiej :)
> Prawdę mówiąc w aktualnych wersjach nie narzekam na ciężkość NB, ale
> faktycznie sam zazwyczaj piszę w lekkim edytorze opartym na Kate-part z  
> KDE
> (szczególnie w perlu). Natomiast IDE używam ze względu na
>  - debugger (do dyskusji niżej ;) )
>  - refactoring (tutaj odpada jak rozumiem)

dlaczego mialby odpadac? podstawowe rzeczy (rename method czy rename  
class) jestes w stanie zrobic dobrym edytorem. NB i Eclipse daja tez  
troche bardziej zaawansowane funkcje. rzeczy typu extract variable czy  
extract method mozna zrobic makrem w TextMate. w czym problem?

>  - podpowiedzi (tutaj odpada niestety)

ale, jak pisalem, sa inne mozliwosci. Ruby to nie Java i na prawde latwiej  
sie w nim polapac.

>  - ładne wsparcie dla subversion czego Kate nie ma

ale bash ma :) ja sobie porobilem aliasy na najczesciej uzywane funkcje i  
nie narzekam. z tego co wiem, koledzy z zespolu uzywaja tez obslugi SVN  
wbudowanej w Textmate.

w codziennej pracy uzywam 5 funkcji SVN: status, update, commit, add,  
remove. dodatkowo w Textmate od czasu do czasu: blame, diff, log. czy  
naprawde trzeba miec do tego jakies wodotryski?

>> podpowiadanie metod - zapomnij o tym :) nie potrzebujesz tego.
>> potrzebujesz tylko dobrego helpa z lista wszystkich metod (polecam
>> gotapi.com)
> trochę mi to wygląda na "nie możemy tego mieć to powtarzajmy wszyscy  
> razem
> głośno >>podpowiedzi są niepotrzebne<< - może uwierzymy" :)

nie, to brzmi jak: Ruby jest prostszy od Javy :)

> Biblioteka
> standardowa JDK zawiera prawie 3500 klas,

Ruby jest prostszy od Javy :)

> większości z nich nie uzywasz na
> codzień - naprawdę jest to przyjemne jeśli nagle potrzbujesz użyć jakies
> URLConnection i nie musisz szukać po dokumentacji czy metoda  
> getHeaderField
> bierze jako argument int czy String

"int czy String" to jest dokladnie 0 informacji. powinienes pytac, "co" ma  
byc argumentem (np. host albo nr portu), a nie "jakiego to jest typu". jak  
bedziesz wiedzial "co", to typ bedzie mniej lub bardziej oczywisty.

> i co zwraca

j/w

> - bo po ctrl-spacja masz
> przed nosem opis właśnie tej metody.

masz opis jak masz kod zrodlowy do jara podpiety w odpowiednim miejscu w  
IDE, a w nim javadoce. jak nie masz, to widzisz tylko typy. czyli jak  
pisalem wyzej, masz tylko tyle informacji, zeby zadowolic marudny  
kompilator. ale to jeszcze nie znaczy, ze program bedzie dzialal tak, jak  
bys chcial.

> Nie mówie, że jest to niezbędne bo w perlu pracuję w oparci o podpowiedzi
> oparte na wystąpieniach stringów w otwartch plikach (chyba to to samo o
> czymi pisałeś w kontekście textmate) i też da się żyć :)

no widzisz. IMHO czesto jest to lepsze, niz podpowiadanie metod w IDE, bo  
w kodzie czesto powtarzaja sie te same identyfikatory, i to nie tylko jako  
nazwy metod.

>> zapomnij o debuggerze :) w czasie roku pracy z Rubym nie uzylem go ani
>> razu. testy, irb i p Twoimi przyjaciolmi. prawdziwymi przyjaciolmi.
>> debugger nie jest Twoim przyjacielem. bedzie Ci wmawial ze jest, ale tak
>> na prawde jest jak diler narkotykow :)
> eee... w czym ci zawiniły biedne debuggery, że masz o nich takie złe
> zdanie? :)

mi w niczym, bo nigdy nie dalem sie uzaleznic :) ale jak czasem czytam, co  
inni wypisuja o debuggerach, to mam podejrzenie, ze sie uzaleznili.

dla mnie antidotum jest proste: testy jednostkowe, czytanie stacktrace'ow,  
prosty kod (nie za dlugie metody, nie za duzo zmiennych, nie  
kombinowanie), w ostatecznosci "p zmienna" i jazda. dobre pokrycie testami  
czesto zastepuje debugger, gdyz odpalajac jedna metode od razu wchodzisz  
do kodu, ktory chcesz sprawdzic. kilka prob z p i wiesz o co chodzi.

>> i znow: w czasie roku pracy z Rubym chyba nigdy nie zastanawialem sie
>> "wlasciwie jakiego typu jest dany obiekt?". w 99% to albo jest  
>> oczywiste z
>> kontekstu, albo nie ma znaczenia.
> A widzisz, ja się zastanawiałem, bo na przykład moja klasa serwera
> dziedziczy z SOAP::RPC::HTTPServer, który ma jako parent
> napisany "Logger::Application" - a faktycznie jest oparty na na Webricku.
> Dokumentacja konstruktora jest porażająca wręcz:
> http://www.ruby-doc.org/core/classes/SOAP/RPC/HTTPServer.html

no rzeczywiscie, dokumentacja do tej klasy jest fatalna. i to jeszcze jest  
klasa ze standardowej biblioteki, jezeli dobrze rozumiem? jak juz pisalem:  
SOAP - bleeee :)

> To akurat jest całkiem fajne :) A już najbardziej mi się podoba z takich
> bazowych rozwiązań, że fałsz to fałsz i nie ma nic wspólnego z 0 albo 1
> (tak na marginesie).

a wiekszosci sie nie podoba :) ale zawsze mozna sie pobawic w  
przedefiniowanie operatorow logicznych dla 0 :P

>> musisz pozbyc sie podejscia typowego dla javowcow, czyli "wszyscy
>> programisci (poza mna) chca mi (i/lub sobie) zrobic krzywde".
> Na szczęście nie jestem typowym javowcem i robię też duże rzeczy w perlu
> gdzie bez przerwy robimy sobie na wzajem krzywdy i nadal jest fajnie ;)

LOL

pzdr
	szeryf

-- 
Przemysław ,,Szeryf'' Kowalczyk :: http://szeryf.wordpress.com/
Technical Details
Message-ID: <op.ubcc0g0fuw9fft@negative-361apc>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.task.gda.pl!not-for-mail
References: <g0ia32$571$1@node1.news.atman.pl> <op.ubafw7fzuw9fft@negative-361apc> <g0n36u$oru$1@node2.news.atman.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.task.gda.pl!not-for-mail
From: Przemysław Kowalczyk <someone@microsoft.com>
Newsgroups: pl.comp.lang.ruby
Subject: Re: ruby - wrażenia i pytania
Date: Sun, 18 May 2008 10:39:42 +0200
Organization: CI TASK http://www.task.gda.pl/
Lines: 128
Message-ID: <op.ubcc0g0fuw9fft@negative-361apc>
References: <g0ia32$571$1@node1.news.atman.pl> <op.ubafw7fzuw9fft@negative-361apc> <g0n36u$oru$1@node2.news.atman.pl>
NNTP-Posting-Host: xdsl-10757.wroclaw.dialog.net.pl
Mime-Version: 1.0
X-Trace: news2.task.gda.pl 1211100419 10663 84.40.237.5 (18 May 2008 08:46:59 GMT)
X-Complaints-To: abuse@news.task.gda.pl
NNTP-Posting-Date: Sun, 18 May 2008 08:46:59 +0000 (UTC)
User-Agent: Opera Mail/9.10 (Win32)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit