Article View: pl.comp.lang.c
Article #246973Re: ile czasu trzeba aby sie nauczyc c++?
From: godek.maciek
Date: Fri, 07 Apr 2017 10:15
Date: Fri, 07 Apr 2017 10:15
49 lines
4370 bytes
4370 bytes
W dniu piątek, 7 kwietnia 2017 11:52:09 UTC+2 użytkownik slawek napisał: > > Napisałeś, że uważasz, że na 40 linii kodu powinno= > > przypadać > > 50 linii komentarza, ale nie napisałeś, dlaczego > > Bo jeżeli piszę wysokopoziomowo, np. wywołując jakieś 100 różnych > funkcji/metod w 40 linijkach, to robi się coś konkretnego. Te coś > konkretnego wymaga opisania: co się robi, jakie parametry, jakie > skutki, co powinno być a co nie, Według mnie: To, co się robi, powinno wynikać z nazwy funkcji. To, jakie parametry, powinno wynikać z nazw tych parametrów, albo czegoś w tym rodzaju -- ja jak piszę w Schemie, to daję jednosłowowe komentarze "przyimkowe", wyjaśniające role poszczególnych argumentów, np. w kodzie rozwiązującym problem komiwojażera miałem coś w stylu (shortest-path+cost #;from start #;to end #;through others) To, jakie skutki, powinno wynikać z asercji/kontraktów. Zresztą wydaje mi się, że w tym przypadku wartość programowania funkcyjnego jest szczególnie duża, bo zazwyczaj funkcje nie mają skutków, tylko wartości, a jeśli mają skutki, to w Haskellu albo Scali wynika to z typu. > jaki algorytm i gdzie coś można poczytać (referencje). Tego, jaki algorytm, albo referencji, rzeczywiście nie da się zawrzeć poza komentarzem, ale to zazwyczaj jedna linijka. > To będzie już 30 do 40 linijek komentarza. Do > tego jeszcze kilkanaście w tekście, np. że nie robić czegoś > oczywistego, bo dany fragment musi być taki właśnie jaki jest. > > I już jest nawet i 50 linii komentarza. Zwłaszcza że liczę takie > > A=5; // cm > > za linię z komentarzem. Chyba lepiej byłoby tak: A_cm = 5; Pod tym względem ciekawe rozwiązanie ma F#: https://en.wikibooks.org/wiki/F_Sharp_Programming/Units_of_Measure
Technical Details
Message-ID:
<f52db3b6-cba3-4c7a-9d02-2fa8105dab31@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!y18no5698056itc.0!news-out.google.com!j72ni2036itb.0!nntp.google.com!y18no5703709itc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<451e90e7$0$17965$f69f905@mamut2.aster.pl> <2bb5.00000022.45239396@newsgate.onet.pl> <eg0l2h$pre$1@nemesis.news.tpi.pl> <2afb3725-2059-4f04-b4ac-0989aff4dbd4@googlegroups.com> <58e1d648$0$5141$65785112@news.neostrada.pl> <896bb474-1535-4eb5-a427-1d74855ca14e@googlegroups.com> <58e20fc5$0$643$65785112@news.neostrada.pl> <82bfc8d8-6b1d-4928-b831-bdbbe71fc013@googlegroups.com> <58e245ef$0$640$65785112@news.neostrada.pl> <ed300d94-7f05-4791-ae56-077b774efa54@googlegroups.com> <58e28b69$0$15195$65785112@news.neostrada.pl> <1a59b0b0-0be0-44c9-9886-28171ba25a91@googlegroups.com> <c04357ca-2816-449a-a76d-3544891487be@googlegroups.com> <85e6a3a0-9e65-4bb9-9465-433d9c9c5c5e@googlegroups.com> <58e53652$0$5144$65785112@news.neostrada.pl> <694df5a0-8446-49ac-8e95-64e29d3767b7@googlegroups.com> <58e53ca6$0$15190$65785112@news.neostrada.pl> <c11906bf-4238-4b12-bcd1-38fefcec7225@googlegroups.com> <oc4lvi$n5f$1@node1.news.atman.pl> <58e5df11$0$5156$65785112@news.neostrada.pl> <almarsoft.5519333400367255350@news.v.pl> <almarsoft.1887009307138951124@news.v.pl> <a01917ce-6005-4ba5-ab6f-7d503a694651@googlegroups.com> <almarsoft.3812374116751442610@news.v.pl> <d521c115-c757-439a-b6b5-8cf4b5886167@googlegroups.com> <almarsoft.5271328977613451308@news.v.pl> <df81b585-523e-4ed7-a9b1-3eb3a980639d@googlegroups.com> <almarsoft.37215651928186221@news.v.pl>Show Full Headers
Complete Article Headers
X-Received: by 10.99.124.27 with SMTP id x27mr15621234pgc.50.1491560141522; Fri, 07 Apr 2017 03:15:41 -0700 (PDT) X-Received: by 10.157.4.11 with SMTP id 11mr799884otc.16.1491560141470; Fri, 07 Apr 2017 03:15:41 -0700 (PDT) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!y18no5698056itc.0!news-out.google.com!j72ni2036itb.0!nntp.google.com!y18no5703709itc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.c Date: Fri, 7 Apr 2017 03:15:41 -0700 (PDT) In-Reply-To: <almarsoft.37215651928186221@news.v.pl> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.192.95.134; posting-account=f7iIKQoAAAAkDKpUafc-4IXhmRAzdB5r NNTP-Posting-Host: 213.192.95.134 References: <451e90e7$0$17965$f69f905@mamut2.aster.pl> <2bb5.00000022.45239396@newsgate.onet.pl> <eg0l2h$pre$1@nemesis.news.tpi.pl> <2afb3725-2059-4f04-b4ac-0989aff4dbd4@googlegroups.com> <58e1d648$0$5141$65785112@news.neostrada.pl> <896bb474-1535-4eb5-a427-1d74855ca14e@googlegroups.com> <58e20fc5$0$643$65785112@news.neostrada.pl> <82bfc8d8-6b1d-4928-b831-bdbbe71fc013@googlegroups.com> <58e245ef$0$640$65785112@news.neostrada.pl> <ed300d94-7f05-4791-ae56-077b774efa54@googlegroups.com> <58e28b69$0$15195$65785112@news.neostrada.pl> <1a59b0b0-0be0-44c9-9886-28171ba25a91@googlegroups.com> <c04357ca-2816-449a-a76d-3544891487be@googlegroups.com> <85e6a3a0-9e65-4bb9-9465-433d9c9c5c5e@googlegroups.com> <58e53652$0$5144$65785112@news.neostrada.pl> <694df5a0-8446-49ac-8e95-64e29d3767b7@googlegroups.com> <58e53ca6$0$15190$65785112@news.neostrada.pl> <c11906bf-4238-4b12-bcd1-38fefcec7225@googlegroups.com> <oc4lvi$n5f$1@node1.news.atman.pl> <58e5df11$0$5156$65785112@news.neostrada.pl> <almarsoft.5519333400367255350@news.v.pl> <almarsoft.1887009307138951124@news.v.pl> <a01917ce-6005-4ba5-ab6f-7d503a694651@googlegroups.com> <almarsoft.3812374116751442610@news.v.pl> <d521c115-c757-439a-b6b5-8cf4b5886167@googlegroups.com> <almarsoft.5271328977613451308@news.v.pl> <df81b585-523e-4ed7-a9b1-3eb3a980639d@googlegroups.com> <almarsoft.37215651928186221@news.v.pl> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <f52db3b6-cba3-4c7a-9d02-2fa8105dab31@googlegroups.com> Subject: Re: ile czasu trzeba aby sie nauczyc c++? From: godek.maciek@gmail.com Injection-Date: Fri, 07 Apr 2017 10:15:41 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit