henrivo | woensdag 29 juni 2011 @ 20:19 | |||
Hoi, ik heb dit topic gemaakt voor mensen die willen leren programmeren, maar er nog niet precies uit zijn welke taal het beste bij ze past. Ik wil deze OP variabel maken, met daarin een lijstje van beschikbare talen, en daar de voor- en nadelen in verwerkt. En daar kunnen de users over gaan discusseren in dit topic ![]() ![]() Ik wil zelf ook namelijk desktop apps gaan schrijven, maar zie door de bomen het bos niet meer. C, C#, C++, Python, Java, QT en al die dingen. Game on! Welke programmeertaal heb jij gekozen, en om welke reden ben je die taal gaan leren? Scripttalen PHP Voordelen Zeer populair Makkelijk te leren Brede ondersteuning Veel voorbeelden te vinden Snel Platformonafhankelijk Opensourcesoftware Nadelen Programmeertalen C Voordelen Platformonafhankelijk Sluit dicht aan bij de hardware Nadelen C++ Voordelen Platformonafhankelijk Sluit dicht aan bij de hardware Object georienteerd Nadelen C# Voordelen Nadelen Objective-C Voordelen Performance door het low-level C en tegelijkertijd de mogelijkheid high-level object-georienteerd te werken. Nadelen Java Voordelen Platformonafhankelijk Uitgebreidere klassenbibliotheek dan C++ Nadelen Ruby Voordelen Simpele, elegante doch krachtige taal, heel leesbaar Makkelijk te leren I.c.m. Rails kan je er heel productief mee zijn Nadelen En als je uiteindelijk tóch nog geen keuze kunt maken, kijk dan eens hier ![]() Laten we met zn allen dit lijstje afmaken, commentaar op de OP is altijd welkom! ![]() [ Bericht 12% gewijzigd door henrivo op 29-06-2011 22:16:51 ] | ||||
Pipo1234 | woensdag 29 juni 2011 @ 20:25 | |||
PHP: Omdat het bruikbaar was i.c.m. het internet. | ||||
Lod | woensdag 29 juni 2011 @ 20:26 | |||
Voor welk platform wil je ontwikkelen (Windows, Linux, Apple), of wil je platformonafhankelijk zijn? Ik spreek Delphi vanwege mijn werk, ik zou het zelf niet gekozen hebben. Vind met name de syntax niet echt duidelijk. Verder nog een beetje C#, asp en .NET voor onze webapplicatie. En Java vanuit school, maar dat is meer theoretisch. | ||||
Fred | woensdag 29 juni 2011 @ 20:35 | |||
PHP (lekker snel en ranzig iets in elkaar zetten, alles wat ik maak is toch alleen voor eigen gebruik). Verder kan ik ook nog iets met C, C++, Java, Delphi en Pascal. Maar ik doe er verder weinig mee, aangezien ik het te saai vind. Maar tis in de ICT wel handig om hier kennis van te hebben ![]() | ||||
#ANONIEM | woensdag 29 juni 2011 @ 20:37 | |||
![]() | ||||
IDisposable | woensdag 29 juni 2011 @ 20:39 | |||
Ga je mond spoelen ouwe! | ||||
DuTank | woensdag 29 juni 2011 @ 20:47 | |||
nerd verzameltopic | ||||
QBay | woensdag 29 juni 2011 @ 21:01 | |||
De taal is van ondergeschikt belang. Het abstracte denken en de juiste mind-set is het belangrijkste! | ||||
henrivo | woensdag 29 juni 2011 @ 21:05 | |||
OP aangepast, suggesties voor t lijstje graag ![]() | ||||
Dwan | woensdag 29 juni 2011 @ 21:14 | |||
C#, ASP, jQuery, JavaScript van alles een beetje om vet mooie web apps te maken voor SharePoint ![]() | ||||
QBay | woensdag 29 juni 2011 @ 21:30 | |||
Nadelen van PHP zijn het feit dat het zo'n rommeltje kan worden, niet al te beste OO implementatie en mensen die denken dat ze expert zijn in PHP maar er toch een rommeltje van maken. PHP is complexer dan je denkt, vooral als ik dan als voordeel 'makkelijk te leren' zie staan gaan mijn nekharen omhoog. Uiteraard is PHP makkelijker te leren, je kan eventueel alles in een bestand knallen en gaan met die banaan, echter is dit verre van ideaal. Om expert in PHP te worden en er echt bedreven in te zijn ben je jaren van oefening en gebruik verder! Wat betreft programmeertalen is het moeilijker om een onderscheid te maken, zo zijn vrijwel alle programmeertalen object georiënteerd dus dat is geen voordeel wat mij betreft. Alle programmeertalen zijn even complex (Java, C++, C#, Python, etc.) en hebben vrijwel dezelfde leercurve, het abstracte denken en de juiste mind-set is noodzakelijk. Je moet het juiste gevoel hebben, zonder het juiste gevoel zal je nooit een goede programmeur worden. Daarom zijn de beste programmeurs ook meestal al (zeer) jong begonnen met programmeren, als je op je 18de pas begint heb je al een achterstand van +/- 5 jaar... Wat veel nieuwelingen als nadeel beschouwen van C++ is dat er geen automatische garbage collection aanwezig is, hierdoor moet je het geheugen zelf vrijgeven. Uiteindelijk leer je dit wel toe te passen. Ander nadeel van C en C++ voor nieuwelingen zijn pointers, die heb je in Java bijvoorbeeld niet zo duidelijk. Ook met pointers leer je uiteindelijk wel werken. Voordeel van Java is weer dat het gebruikt wordt voor Android (mobiele applicaties), echter wordt C# gebruikt voor Windows, Xbox 360 (heb zelf een spel gemaakt voor de Xbox 360 met C#) en Windows Phone 7. C++ werkt geloof ik ook op Android, weet het niet zeker voor Windows Phone 7 (ik vermoed van niet). Python is meer gericht voor webdevelopment, al kan je er ook desktop-applicaties en games mee bouwen. Python is best een leuke taal, maar wellicht wat vreemde syntax vergeleken met bijvoorbeeld Java en C gebaseerde talen. Bij Python is de indent/inspring bijvoorbeeld van belang voor de werking van je code, terwijl dit bij Java, C#, C++ en dergelijke alleen gebruikt wordt om je code mooier te maken. Kortom: talen zijn moeilijk tot niet te vergelijken. | ||||
henrivo | woensdag 29 juni 2011 @ 21:39 | |||
Je hebt gelijk dat er mensen zijn die er een rommeltje van maken, maar dat heb je met elke taal wel denk ik zo. Ik ben zelf ook nog redelijk nieuw in het developerswereldje, en de code die ik zelf maak is ook niet altijd even netjes, maar zulke dingen leer je naarmate je langer programmeert en veel voorbeelden bekijkt van andere "programmeurs" ![]() De bedoeling van dit topic is juist dat mensen die graag willen leren programmeren, leren welke taal het beste bij ze past, wat de eventuele beperkingen zijn en zulk soort dingen. En daar kan over worden gediscusseerd in dit topic ![]() | ||||
henrivo | woensdag 29 juni 2011 @ 21:45 | |||
Laat ik als voorbeeld mezelf nemen: Ik zou graag desktopapplicaties willen schrijven, voornamelijk Windows, maar ik wil ook dat Mac- en Linuxgebruikers het kunnen draaien, platformonafhankelijk dus. Zou ik dan voor C kiezen? Of is C++ dan een betere keuze? Of waarom zou ik niet in Java leren programmeren? En is het dan makkelijk om te porten naar een ander OS? Wat komt daar allemaal bij kijken? Maar dit is mijn situatie, en die van een ander zal weer anders zijn maar daar is dit topic voor ![]() | ||||
Ai_KaRaMBa | woensdag 29 juni 2011 @ 21:45 | |||
Dat is trouwens niet correct. Er zijn meerdere opensource implementaties van de .net runtime. Mono is zelfs vrij ver en heeft zelfs een groot deel van de "windows specifieke" bibliotheken portable geimplementeerd. | ||||
henrivo | woensdag 29 juni 2011 @ 21:47 | |||
Bedankt voor het commentaar, ik zal het even weghalen. Zoals al eerder vermeld zit ik nog niet zo gek lang in het "developerswereldje", dus dat wist ik niet ![]() | ||||
Ai_KaRaMBa | woensdag 29 juni 2011 @ 21:47 | |||
En voor platform onafhankelijke desktop applicaties zou ik trouwens niet direct voor C/C++ kiezen: de API voor de diverse platformen is compleet verschillend. Wil je het netjes doen zit je eigenlijk al vast aan een third-party library om de GUI te abstraheren (wxWindows, GTK, ...) Als je platform-onafhankelijkheid wil, zou ik voor java of .net (mono) gaan. | ||||
Pietverdriet | woensdag 29 juni 2011 @ 21:48 | |||
Cobolklopper meldt zich Java is erg mooi vind ik, vooral omdat het hele geheugengebeuren in de compiler geregeld wordt, scheelt veel bugs, en je kan op goedkope platforms ontwikkelen voor bv grote HP systemen. | ||||
Ai_KaRaMBa | woensdag 29 juni 2011 @ 21:50 | |||
Ik vind zelf (als C / C++ programmeur) het soms verdomd iritant dat je zelf geen invloed (of zelfs inzicht) hebt op de lifecycle van objecten in Java... | ||||
Monidique | woensdag 29 juni 2011 @ 21:55 | |||
Ik heb 'm zelf niet, maar als je toch geen keuze kunt maken: http://pragprog.com/titles/btlang/seven-languages-in-seven-weeks, ![]() | ||||
retorbrapi | woensdag 29 juni 2011 @ 21:59 | |||
Ik ben fan van: - Ruby; simpele, elegante doch krachtige taal, heel leesbaar en makkelijk te leren en icm Rails kan je er heel productief mee zijn. - Objective-C; performance door het low-level C en tegelijkertijd de mogelijkheid high-level object-georienteerd te werken. | ||||
henrivo | woensdag 29 juni 2011 @ 22:15 | |||
Ze staan in de OP ![]() | ||||
Pietverdriet | woensdag 29 juni 2011 @ 22:20 | |||
Lang geleden heb ik ook nog in prolog gewerkt, Erg mooi voor expertsystemen en niet echt lastig om te leren. | ||||
henrivo | donderdag 30 juni 2011 @ 18:36 | |||
En tóch ben ik er zelf iig nog niet helemaal uit... C, C++ of Java. Iemand nog meer suggesties/onderbouwingen? ![]() Misschien een ideetje om hier een reeks van te maken? Voor de "nieuwe generatie" programmeurs? | ||||
QBay | donderdag 30 juni 2011 @ 19:52 | |||
Wat wil je doen? Als je cross-platform wilt ontwikkelen (waar ik wel vanuit ga gezien je selectie van talen) zou ik je Java aanbevelen. Java is makkelijker te leren voor een beginner, je hoeft niet met pointers en garbage collection te werken in Java terwijl dit wel in C++ moet. Houd er wel rekening mee dat je niet in een dag, week, maand of zelfs jaar leert programmeren. Om goed te kunnen programmeren op professioneel niveau ben je zo 4-5 jaar van toepassen en oefenen verder. | ||||
henrivo | donderdag 30 juni 2011 @ 20:23 | |||
Daar zit wat in ja. Om heel eerlijk te zijn heb ik ook geen idee wat pointers of garbage collection is, dus daar kan ik weinig over zeggen. Wat ik heb gehoord is dat Java zo ongeveer de standaard is op scholen als je leert programmeren (correct me if im wrong) en aangezien ik volgend jaar de opleiding applicatieontwikkelaar wil gaan doen zou een kleine voorsprong de opleiding wat minder pittig maken denk ik ![]() Maar ik ga er nu dus van uit dat alles wat je met C(++) kunt, ook met Java kunt doen en andersom? | ||||
QBay | donderdag 30 juni 2011 @ 20:31 | |||
Nogmaals, de taal is echt niet het belangrijkste. Tijdens de opleiding leer je ook geen taal, maar meer algoritmes, het abstracte denken en wiskundige zaken. De taal moet je zien als hulpmiddel. Ik ben tijdens mijn studie ook begonnen met Java en drie jaar later heb ik een 3D-game voor de Xbox 360 ontwikkeld (uiteraard in C#). Met C(++) kan je hetzelfde als je in Java kan, ook andersom gaat dit grotendeels op. Java werkt meestal niet op embedded systems zoals bijvoorbeeld pin-automaten of de OV-chipkaart scanner, die draaien op C++. Java wordt het meest gebruikt in het onderwijs inderdaad. Java is prima geschikt om de basis van het programmeren te leren omdat je minder hoeft te focussen op zaken die voor een beginner oninteressant zijn (pointers en garbage collection bijvoorbeeld). Daarnaast zijn er tal van beginners boeken voor Java. Vergis je echter niet, Java is absoluut geen simpele taal! Je kan ontzettend veel met Java. | ||||
henrivo | donderdag 30 juni 2011 @ 20:33 | |||
Dan denk ik dat ik er uit ben! ![]() ![]() | ||||
The_Terminator | donderdag 30 juni 2011 @ 20:38 | |||
Ik heb voor PHP gekozen. Vanaf versie 5 heeft PHP imo goede ondersteuning voor objectgeoriënteerd programmeren, de platformonafhankelijkheid vind ik ook een pre. Ik heb al erg veel gescheven in PHP; zowel voor het werk als privé en het is me nog nooit tegengevallen. Zoals eerder aangegeven zijn er meer dan genoeg voorbeelden te vinden, en is er een duidelijke online handleiding beschikbaar. Ik gebruik PHP voornamelijk om shellscripts en webapplicaties/tools te ontwikkelen. | ||||
henrivo | donderdag 30 juni 2011 @ 20:44 | |||
Ja, dat bedacht ik me ook net. Ik ben wel al redelijk thuis in PHP, en dat toont weer veel overeenkomsten met C++ qua syntaxis en zo. PHP is een erg fijne taal ja, heel veel mogelijkheden en zo. ![]() | ||||
SwiffMeister | donderdag 30 juni 2011 @ 20:47 | |||
Ik mis bij Java een hele groot pluspunt tov C++ Bijna volautomatisch memory-management. Bijkomend nadeel: Moeilijk controle houden over je memory, maar als je begint te programmeren en toch van plan bent om meerdere talen te gaan leren, start met Java en stap na een tijdje over op C++. Nog een nadeel: traag en veel overhead (althans dat idee had ik toen ik nog Java programmeerde) Ik ben jaren geleden met Basic, Visual Basic, Java begonnen. Daarna C++ en C#. Beetje PHP erbij, maar dat diende eigenlijk meer om een webinterface te maken bij een SQL project. Uiteindelijk C, Assembler/Assembly en VHDL geleerd. Maarja met een andere taal kun je weinig als je embedded zooi moet bouwen en programmeren. [ Bericht 38% gewijzigd door SwiffMeister op 30-06-2011 20:58:37 ] | ||||
VanishedEntity | donderdag 30 juni 2011 @ 20:58 | |||
Was Delphi / Object Pascal al genoemd? | ||||
IDisposable | donderdag 30 juni 2011 @ 21:09 | |||
Dat vind ik persoonlijk echt een lelijke taal om in te werken. Dan ga ik toch liever voor de C/C++ varianten. Voor mijn werk programmeer ik alles in C#. Vooral voor het ontwikkelen van RIA's is dit voor mij de taal bij uitstek. Wat ik vooral fijn aan C# vind, zijn de language extensions en Lambda Expressions. Je kan echt super compacte code schrijven. En het ziet er nog esthetisch uit ook. Een ander groot voordeel is dat het qua syntax veel raakvlakken heeft met andere talen zoals C/C++ en JAVA. Een ervaren programmeur kan dus makkelijk overstappen naar C#. Iets wat ik van een die-hard Delphi programmeur niet zo snel zal zien. [ Bericht 15% gewijzigd door IDisposable op 30-06-2011 21:16:16 ] | ||||
VanishedEntity | donderdag 30 juni 2011 @ 21:26 | |||
Je weet dat Microsoft voor de ontwikkeling van C#/.NET de main developer van Object Pascal / Delphi heeft aangetrokken hèh? | ||||
themole | donderdag 30 juni 2011 @ 22:36 | |||
Het meeste code ik in C, Java en Python. En voor webapplicaties natuurlijk php. Verder heb ik ooit visual basic 6 geleerd jaren terug, maar dat bevalt me niet echt. Verder heb ik mezelf ook nog een AT&T assembly aangeleerd, wat ook een aanrader is om te kennen, als programmeur zie je dan pas wat voor een luxe taal C is. ![]() ![]() | ||||
QBay | vrijdag 1 juli 2011 @ 10:46 | |||
Alsjeblieft, vergelijk PHP niet met C(++), Java, C# of welke andere programmeertaal dan ook! PHP staat echt compleet los van programmeertalen, PHP wordt ook wel vaker een scripttaal genoemd. PHP is echt voor webdevelopment terwijl C georiënteerde talen en Java meer voor desktop-applicaties is (ja, je kan er wel web implementaties mee doen maar dat is niet de hoofdzaak). PHP vinden velen een fijne taal omdat het niet zo strict en streng is, hierdoor lijkt het makkelijker. Dat je veel mogelijkheden hebt met PHP is een non-argument, je hebt zoveel mogelijkheden als je zelf wil. Dit geldt ook voor andere talen, het is niet zo dat je met PHP meer kan dan bijvoorbeeld Java of C++. Persoonlijk vind ik PHP geen goede taal om te leren programmeren, de overstap van PHP naar bijvoorbeeld C++ of Java is groter dan andersom. Je leert met PHP nasty dingen die je in C++, Java en dergelijke weer moet afleren (en dat is moeilijk als je het zo eenmaal gewend bent!). Ik heb zelf ook het pad bewandeld van Java > C# > PHP. Momenteel werk ik vrijwel alleen met PHP en niet meer met Java en C#. | ||||
IDisposable | vrijdag 1 juli 2011 @ 14:07 | |||
Helemaal mee eens. PHP is een instap(script)taal. Je kan er echt wel mooie dingen mee maken, maar het is lang niet zo veelzijdig en krachtig zoals C/C++, C# of JAVA. Voor webapplicaties is PHP natuurlijk prima. Het is makkelijk te implementeren, overdraagbaar en relatief goedkoop. Persoonlijk zou ik toch de voorkeur aan ASP.NET of JSP geven. | ||||
Cid | vrijdag 1 juli 2011 @ 15:03 | |||
Wijze user! Verder pruts ik vooral in Perl omdat het lekker snel en simpel is in scriptjes voor het werk. Voor het echte werk is de taal inderdaad ondergeschikt. Een goed ontwerp is veel belangrijker. Zelf spreek ik wat JAVA en C. | ||||
themole | vrijdag 1 juli 2011 @ 15:19 | |||
Klopt tot op bepaalde hoogte, persoonlijk lijkt mij applicaties ontwerpen in prolog nogal lastig. ![]() ![]() | ||||
Daeron | vrijdag 1 juli 2011 @ 15:55 | |||
Ik vind zelf Java een geweldige taal. Ook door de grote schaalbaarheid. Je kan er snel een kleine applicatie voor thuis in schrijven of zware bedrijfskritische processen mee automatiseren. Een ander groot voordeel van Java is dat de complete API gedocumenteerd is, in tegenstelling tot .Net waar het regelmatig voorkomt dat je een functie aanroept waarvan niet duidelijk is wat die doet en wat voor resultaat je kan verwachten anders dan dat het een object van een bepaald type is. | ||||
X_FoutBijRegistratie | vrijdag 1 juli 2011 @ 16:28 | |||
Heb ervaring met: C# ASP.NET VB(A) JAVA PHP C# doe ik dagelijk ( werk ![]() ASP.NET icm C# gebruikt voor m'n stages op school, intranet applicatie in geschreven. VB(A) zelf ontdekt, toen in voornamelijk bezig was in Access. Vond het niet veel. JAVA op school "geleerd", zoals Lod al zei, meer theoretisch. Lijkt wel veel op C#. PHP voor school opdrachten gebruikt, ben er absoluut geen fan van, vindt het te onsamenhangend en lastig leesbaar. Heb nog een cursus Javascript thuis liggen waar ik maar eens aan moet gaan beginnen, heb er niet veel ervaring mee, maar het is wel een must voor webapplicaties. | ||||
IDisposable | vrijdag 1 juli 2011 @ 17:36 | |||
JavaScript is echt horror. Het is moeilijk te debuggen/onderhouden. Daarnaast heb je te maken met compatibiliteits obstakels. En omdat het bovenop de browser stack draait, zijn de foutmeldingen over het algemeen zo generiek dat je er bijna niets meer mee kunt doen. | ||||
Pietverdriet | vrijdag 1 juli 2011 @ 17:46 | |||
Java en Javascript zijn niet hetzelfde, dat weet je? | ||||
X_FoutBijRegistratie | vrijdag 1 juli 2011 @ 18:44 | |||
Wat IDisposable (toepasselijke naam trouwens ![]() Java geeft net als C# gewoon duidelijk foutmeldingen. (Vind ik dan althans, werk niet met Java, maar wat ik me er kan van herinneren was het zo) | ||||
RiDo78 | zaterdag 2 juli 2011 @ 15:37 | |||
Ik ken veel talen al ben ik niet een die-hard developer. Ik kan talen als: Basic (veel varianten waaronder GW-Basic, Qbasic, QuickBasic en Visual Basic), Assembly (x86 en een paar variantjes), ik heb ooit een klein beetje C en C++ gehad, Java mag ook niet ontbreken en ik was redelijk wegwijs in Turbo/Borland Pascal. Qua webtalen ken ik HTML, Javascript, PHP, en een beetje ASP. Momenteel ben ik met een projectje bezig die ik in C# bouw. Ik heb het eerst in C++ geprobeerd, maar liep daar telkens vast op de variabele-types die de Windows Api's graag zien en die, die in C++ gebruikelijk zijn. Ik werd gek van het heen en weer casten, dus heb mijzelf toen maar C# aangeleerd (als je al zoveel talen kent is het leren van een nieuwe taal peanuts) en toegepast. Om nog even hard terug on-topic te gaan, wil je aan een nieuw project beginnen, kijk dan eerst in hoeverre de talen die je al machtig bent geschikt zijn voor de klus. Bijvoorbeeld een dynamische webpagina bouwen met C# is technisch mogelijk maar het is er niet echt geschikt voor. PHP en ASP klaren de klus een stuk makkelijker. Beheers je geen geschikte taal, ga dan op zoek naar de taal die het beste past. Bijvoorbeeld: (Doel -> taal -> beredenatie) Snel een database opzetten -> Microsoft Access -> weinig programmeren, vooral klik-klak klaar. een op hardware geente applicatie -> C -> redelijk low-level, eenvoudig toegang tot hardware platvorm onafhankelijke applicatie -> C++ -> eenvoudiger te begrijpen en minder die-hard als C snel een windows applicatie uit blik trekken -> Visual Basic -> eenvoudig te begrijpen. Iets meer specialistische Windows applicatie -> C# -> iets efficienter dan VB Dynamische webpagina bouwen (IIS) -> ASP /.NET -> Ondersteuning zit standaard in IIS Dynamische webpagina bouwen (Apache / IIS) -> PHP -> Gratis ondersteuning voor MySQL/MariaDB, scheelt SQL cals. | ||||
X_FoutBijRegistratie | maandag 4 juli 2011 @ 11:16 | |||
Heeft er iemand hier wel eens een Tool gemaakt? Zo ja? Welke taal en, zou graag wel wat willen zien van het programma, en e.v.t. stukjes (complexe) code. Ik zelf heb niks liggen wat ik kan laten tonen, heb wel altijd graag wat willen maken maar ik ben zo inspiratieloos als wat ![]() | ||||
Daeron | maandag 4 juli 2011 @ 11:37 | |||
Dus je wil onze code gebruiken om jezelf te promoten? ![]() Daarnaast, wat bedoel je met "een Tool"? | ||||
X_FoutBijRegistratie | maandag 4 juli 2011 @ 12:01 | |||
1. Nee, ik ben gewoon benieuwd naar wat mensen gemaakt hebben. ( Kijk regelmatig op Tweakers.net waar ook zo'n topic is) 2. Tool, tja beetje algemeen begrip inderdaad. Wat ik eigenlijk bedoel is gewoon iemands werk / project. Kan een Tool zijn, programma, webapplicatie, app. etc.etc.. | ||||
kwaliteit. | maandag 4 juli 2011 @ 22:06 | |||
Misschien een domme vraag maar hoelang gaan al deze talen nog mee? Worden er geen nieuwe talen gecreërd? ![]() Heb er verder geen verstand van ofzo. ![]() | ||||
FoolWithMokey | maandag 4 juli 2011 @ 22:36 | |||
Ben op dit moment Technische informatica aan het studeren, maar twijfel erg of ik moet overstappen naar informatica. Wat ik niet leuk vind aan Technische informatica: PLC programmeren ![]() Netwerken(Cisco) ![]() Waar ik nog niet uit ben of ik het leuk vind of niet: Technische informatica gaat ook meer over hardware en is erg low level, je krijg ook een hoop assembly, Het zit een beetje tussen Electrotechniek en Informatica. Informatica vind ik leuker omdat het veel meer programmeren is. Ik zit thuis zelf vaak gewoon te programmeren in java of c# of c omdat ik het gewoon leuk vind. Plc en Cisco opdrachten maak ik alleen maar omdat het moet, en vind eigenlijk niet leuk. Wat mij ervan weerhoudt om te switchen naar informatica: Ben bang dat ik teveel achterstand heb qua programmeren vergeleken met informatica studenten die vanaf begin informatica doen. Tips? | ||||
The_Terminator | maandag 4 juli 2011 @ 22:37 | |||
Uiteraard worden er op een gegeven moment wel talen bij gecreëerd. Echter sterven bestaande talen niet zomaar uit; meestal worden bestaande talen uitgebreid met nieuwe functies en/of mogelijkheden waardoor de levensduur erg lang kan zijn. | ||||
FoolWithMokey | maandag 4 juli 2011 @ 22:40 | |||
http://gathering.tweakers.net/forum/list_messages/1316127 http://www.helpmij.nl/for(...)-Test-mijn-programma Bedoel je zoiets? Wel een leuke idee voor Fok!. | ||||
X_FoutBijRegistratie | dinsdag 5 juli 2011 @ 08:26 | |||
Je moet uiteraard doen wat je gevoel zegt, als jij met tegenzin naar school gaat, zou ik de keuze al gemaakt hebben. Heb precies hetzelfde gehad, ik wou stoppen met school na m'n 2e jaar. Maar toen mocht ik een richting kiezen en heb voor programmeren gekozen. Waarom zou je teveel achterstand hebben? Thuis programmeer je ook graag zeg je. Daar leer je wel veel van, zelf dingen uitvogelen e.d. De lessen zal we wel snel oppakken aangezien je er actief mee bezig bent, en het ook leuk vind. Precies ja! Vind het altijd leuk om te zien wat mensen nu weer gemaakt hebben, en e.v.t. stukjes code na te lezen ![]() | ||||
Djoezt | dinsdag 5 juli 2011 @ 09:16 | |||
Dit en uitsluitend dit. | ||||
RiDo78 | dinsdag 5 juli 2011 @ 09:33 | |||
Neem C bijvoorbeeld. Momenteel zijn er 3 varianten op, gewoon C of 'ANSI-C', Cpp of C++ en C# (of C-sharp). ANSI-C is waar de taal mee begonnen is, het is vrij lowlevel, dus je kunt er gemakkelijk de hardware mee aanspreken. Dus erg geschikt voor drivers. Daarop gebaseerd is Cpp, die veel hardwaretaken al uit handen neemt en dus iets minder op de hardware zit, al kan dat nog altijd). C en Cpp zijn beide platvorm onafhankelijk, dat is, de taal kun je voor meerdere platvormen gebruiken, maar de output is geent op een specifiek besturingssysteem en processor. C# is een Microsoft implementatie die vooral geent is op interactie met Windows componenten, het .NET framework in het bijzonder. Maar voordat C bestond, had je al een hele ontwikkeling. Te beginnen ergens met Algol waarop CPL gebaseerd is. CPL werd nog te omslachtig gevonden, dus daarop werd 'Basic' CPL ofwel BCPL gebaseerd. Daarop is weer B gebaseerd en dat heeft uiteindelijk tot C geleid. Zie ook: http://www.authenticsocie(...)omputerlanguages.png | ||||
Trollface. | dinsdag 5 juli 2011 @ 09:43 | |||
Wil je nooit meer zo vloeken? C# is zeker geen variant op C, en ligt dichterbij Java/C++ dan bij C, zoals je schema ook aangeeft. C++ is ook geen stricte subset van C, de enige stricte subset van C is objective-C, wat ik trouwens persoonlijk een verschrikke taal vind. Zelf ben ik tevens bezig met het leren van Scheme, een zeer interessante taal. Iedere programmeur zou ten minste een functionale taal moeten kunnen, al is het maar voor de denkwijze. | ||||
Catbert | dinsdag 5 juli 2011 @ 15:20 | |||
M'n werk mag ik natuurlijk per definitie niet posten, maar als je graag een stuk willekeurige code wil zien:
| ||||
Beelzebufo | dinsdag 5 juli 2011 @ 15:34 | |||
Dit dus. Ik ken diverse programmeertalen, van Cobol via PL/1 naar Pascal en Delphi tot C++ en C# In alle talen is het mogelijk om baggerprogramma's te maken als je niet even nadenkt over de onderliggende concepten. Overigens: als je gewoon een beetje in het wilde weg wilt proberen en 'programmeren', dan kan je Lua overwegen | ||||
FoolWithMokey | dinsdag 5 juli 2011 @ 15:50 | |||
Het kan dat ik thuis met totaal iets anders bezig ben dat wat je bij Informatica leert, Ik heb trouwens wel de eerste twee blokken van I als minor gevolgd, dus ik heb opzich wel een idee van wat ik kan verwachten. Mischien maar eens meer info over vragen. Een andere reden waarom ik twijfel is dat er een stuk minder technische informatici zijn dan gewone informatici, dit zou dus mogelijk meer zekerheid op een baan bieden na mijn studie. | ||||
X_FoutBijRegistratie | dinsdag 5 juli 2011 @ 16:24 | |||
Daar vraag ik ook uiteraard niet naar, dat zou ik ook niet mogen doen. Gewoon die hobby projecten vind ik altijd erg leuk om te zien wat mensen van de grond kunnen brengen. Zal thuis de code ff doorlezen ![]() | ||||
retorbrapi | dinsdag 5 juli 2011 @ 17:42 | |||
Ik vraag me af wat je 'verschrikkelijk' vindt aan Objective-C? | ||||
X_FoutBijRegistratie | dinsdag 5 juli 2011 @ 19:14 | |||
Vraagje: Aangezien ik zelf nog nooit een hobby-programma heb geschreven wil ik onlangs dat wel even wat weten. Stel ik maak een simpel programma'tje om contactpersonen in op te slaan. Hoe zouden jullie het opslaan van deze gegevens doen? In een XML bestand of wat? | ||||
The_Terminator | dinsdag 5 juli 2011 @ 19:17 | |||
Welke taal? Ik zou het bijvoorbeeld in PHP doen icm een MySQL database om de gegevens in op te slaan. | ||||
X_FoutBijRegistratie | dinsdag 5 juli 2011 @ 19:29 | |||
Oh ja, dat zou handig zijn. Voor webapplicaties weet ik het wel. Voor een windows applicatie in C# geschreven. -edit- Stel ik zou zoiets maken, wil ik mensen niet verplichten om een database te installeren zoals sql oid. | ||||
retorbrapi | dinsdag 5 juli 2011 @ 20:46 | |||
Je kan ook bijv. een SQLite database bundelen met je app. | ||||
FoolWithMokey | dinsdag 5 juli 2011 @ 20:51 | |||
Je kunt met C# gegevens gewoon in een .txt bestand opslaan toch? Zoiets misschien:? Of zoek je een veilige manier van data opslaan?
[ Bericht 8% gewijzigd door FoolWithMokey op 05-07-2011 21:55:28 ] | ||||
X_FoutBijRegistratie | dinsdag 5 juli 2011 @ 20:55 | |||
SQLite klinkt wel interessant. Txt bestand is weer te minimaal. Wil toch veel gegevens kunnen slaan.En veiligheid is ook wel een belangrijk punt ja. | ||||
retorbrapi | dinsdag 5 juli 2011 @ 21:25 | |||
Programmeren in het Nederlands ![]() | ||||
Litpho | dinsdag 5 juli 2011 @ 21:30 | |||
"Deze vak bestaat al"? ![]() De laatste tijd veel in Ruby gedaan. Elegante taal en sinds 1.9 de echt grote performance issues (ok, het blijft interpreted) wel gefixt. | ||||
OEM | dinsdag 5 juli 2011 @ 21:48 | |||
SQLite SQLite Manager (Firefox plugin) dblinq2007 (linq to sqlite) met die firefox plugin kun je redelijk makkelijk je database in elkaar knutselen. Met dblinq2007 kun je je database uitgenereren naar c# zodat je met linq er tegenaan kunt praten. (En hopen dat dblinq een beetje meewerkt, geen idee hoe volwassen dat ding is). | ||||
FoolWithMokey | dinsdag 5 juli 2011 @ 21:49 | |||
checkBestaat(); half half ![]()
![]() | ||||
Devv | dinsdag 5 juli 2011 @ 22:22 | |||
Ik zou echt aanraden om Engelse naamconventies in je code te gebruiken. Voor eigen freubeltjes maakt het niet zoveel uit. Maar zodra je in een multidisciplinair team aan een project gaat werken, gaan die Nederlandse namen echt voor problemen zorgen. Het is vooral een kwestie van gewenning. | ||||
FoolWithMokey | dinsdag 5 juli 2011 @ 22:26 | |||
Het stukje code in de spoiler was idd mijn eigen gepruts. Het is voor in de toekomst idd beter als ik alvast engelse benaming aanleer. | ||||
ralfie | dinsdag 5 juli 2011 @ 22:29 | |||
c# heeft ingebouwde databaseachtige dingen, 'datatables' en 'datasets'. Beetje opbouwen a la access en je kunt ze simpelweg manipuleren. Je kunt ze zelfs zonder al te veel moeite van en naar xml overzetten. | ||||
FoolWithMokey | dinsdag 5 juli 2011 @ 23:53 | |||
Ik wist niets over datatables, wel handig. Maar ik heb het volgende stukje code geschreven: Maar ik moet nu toch alsnog een database maken om de ingevoerde gegevens daadwerkelijk op te slaan, of is er een andere manier? | ||||
Devv | woensdag 6 juli 2011 @ 00:09 | |||
Je kan een DataTable/DataSet met de WriteXml methode ook naar een XML bestand laten schrijven. http://msdn.microsoft.com(...)tatable_methods.aspx | ||||
Dalando | woensdag 6 juli 2011 @ 02:21 | |||
PHP HTML JS CSS punt. | ||||
keesjeislief | woensdag 6 juli 2011 @ 03:15 | |||
@TS: neem Python. Heeft alles, kan alles, en de code is simpel en leesbaar genoeg om je niet teveel met randzaken bezig te houden (waar beginnende programmeurs 9 van de 10 keer alle plezier door verliezen). Gewoon doen, even installeren, in kladblok
tikken, opslaan, runnen en daar is je output al. Tegen de tijd dat je in de gaten hebt hoe je dit in Java/C++/C# voor elkaar hebt (lees: bij elkaar geklikt en gesleept hebt in een of andere ontzettende bloated editor) heb je in Python al een volwaardig programmaatje geschreven. ![]() | ||||
X_FoutBijRegistratie | woensdag 6 juli 2011 @ 08:21 | |||
Bedankt voor de tips.Mijn eerste keuze is ook altijd XML omdat het vrij makkelijk en snel werkt. | ||||
Catbert | woensdag 6 juli 2011 @ 12:20 | |||
Zal best, maar aan de andere kant laten scripttaaltjes als Python een beginner juist de meest walgelijke bakken spaghetticode produceren. Waarom denk je dat je juist op informatica opleidingen met Java begint, omdat dat een "slechte" taal is? Ik gebruik zelf vaak een .Net Json library (http://json.codeplex.com/) die me objecten rechtstreeks van en naar JSON laat serializen. | ||||
Daeron | woensdag 6 juli 2011 @ 13:48 | |||
JSON is eigenlijk bedoeld om te communiceren tussen een server (.Net, Java, PHP, wat je zelf wil) backend en een javascript frontend. XML is netter als je communiceert tussen bijvoorbeeld een .Net frontend en een Java backend en als je .Net naar .Net doet gewoon lekker met WCF werken en bij Java naar Java gewoon RMI. ![]() Ik gebruik zelf voor Java trouwens de Google Json library, werkt goed hier ![]() | ||||
MisterSqueaky | woensdag 6 juli 2011 @ 13:51 | |||
Fortran: Achterhaald, ouderwets - maar in de wetenschappelijke wereld circuleren nog miljoenen zeer nuttige Fortran scripts. Ook vrij snel. Haskell en afgeleiden: Functioneel programmeren. Een aparte denkwijze. Niet beter of slechter dan andere methoden, maar gewoon anders ![]() C, C++, C#, Java, Perl etc zijn welbekend ![]() | ||||
FkTwkGs2012 | woensdag 6 juli 2011 @ 13:56 | |||
Java. Omdat daadwerkelijk platformonafhankelijk, volledig gratis te gebruiken en distribueren, taal met toekomst. | ||||
HostiMeister | woensdag 6 juli 2011 @ 13:58 | |||
Dit. Elke taal heeft zijn zwakkere en sterkere kanten, aan jou als programmeur om het juiste gereedschap voor de klus te hanteren. (zoals een docent dat ooit van me zei) Momenteel programmeer ik bijvoorbeeld in VDF terwijl ik van origine een Java programmeur ben, het is allemaal een pot nat. | ||||
MisterSqueaky | woensdag 6 juli 2011 @ 13:59 | |||
Het maakt wel degelijk uit of je imperatief, object oriented of functioneel programmeert hoor ![]() Binnen die "stijlvelden" maakt de taal die je kiest echter idd niet veel uit. | ||||
FkTwkGs2012 | woensdag 6 juli 2011 @ 14:05 | |||
Maakt ook wel degelijk uit. Vooral wat kosten betreft en user community. | ||||
Litpho | woensdag 6 juli 2011 @ 14:11 | |||
Write once, debug anywhere ![]() | ||||
KirovAir | woensdag 6 juli 2011 @ 14:15 | |||
C# Voordelen: Zowel web (MVC!) als windows (en met mono ook linux) applicaties. Snelle leercurve OO Syntax is logisch, en netjes. Verreweg komen daar de best betaalde banen uit voort. Nadelen: Framework(?) Geschreven door een jonge programmeergod die meer dan 4k per maand verdiend. ![]() | ||||
vriendelijkevriend | woensdag 6 juli 2011 @ 17:54 | |||
Was Python niet dat taaltje waarbij de opmaak van je code ook een semantieke betekenis heeft en waarbij je afschuwelijke __underscore__ shit-constructies moet maken? __Oogt__leesbaar__ja__. | ||||
Raven_NL | woensdag 6 juli 2011 @ 18:08 | |||
Hulde ! Java ZUIGT | ||||
Raven_NL | woensdag 6 juli 2011 @ 18:09 | |||
Java is op de zelfde manier platform onafhankelijk als BASIC Java is een interpreter prut taaltje dat doet alsof het een grote jongen is door zijn interpreter een virtuele machine te noemen.. Platform onafhankelijk ? aan mijn hoela Verder.. Wat je ook maakt in java , het ziet er op de een of andere manier altijd houtje touwtje uit... | ||||
Beelzebufo | woensdag 6 juli 2011 @ 18:19 | |||
Ik ben van C++ 'doorgestroomd' naar C# (keuze van de baas...) en herken dit ook. Ik voelde me in het begin doodongelukkig om objecten te instantieren en daarna niet te disposen, maar in de praktijk werkt de garbagecollection redelijk goed (om niet te zeggen dat je los-vaste objecten moet beschermen tegen ontijdige opruiming...) | ||||
Beelzebufo | woensdag 6 juli 2011 @ 18:23 | |||
Ach, het kan nog erger. Neem nou APL, dat is een write-only taal. Teruglezen, laat staan debuggen is bijkans onmogelijk. | ||||
Catbert | woensdag 6 juli 2011 @ 19:14 | |||
Nee, het is daarvoor ontwikkeld. Dat is wat anders. Het heeft t.o.v. XML het voordeel dat het minder overhead heeft. Daarnaast gebruik ik het gewoon om simpele config files e.d. in te lezen en zal het me een worst wezen waarvoor het 'bedoeld' is volgens sommigen. Ja, en daarom worden zoveel grote projecten gedaan in Java ![]() Kneus. Als je niet weet waar je 't over hebt, hou dan je mond. Met je 'geinterpreteerd' ![]() | ||||
keesjeislief | woensdag 6 juli 2011 @ 22:39 | |||
Als dat al gebeurt, dan leert de beginner daar vervolgens van. Vervolgens ontwikkelt deze beginner zich tot een programmeur die weet wat het is om zowel OO, procedureel als functioneel in een taal te kunnen programmeren. Java is voor masochisten: mensen die het (blijkbaar) geen probleem vinden om binnen een netwerk van zinnige en vooral ook een hoop minder zinnige regels en constructies gedwongen worden te blijven, het (blijkbaar) geen probleem vinden om geen interactieve prompt te hebben en continu te moeten compileren en het gezeur van een compiler aan te moeten horen, het (blijkbaar) fijn vinden 5-10 maal zoveel regels code te schrijven als voor hetzelfde resultaat in Python nodig was geweest. Het "scripttaaltje" Python is voor mensen die hun tijd vooral aan het nadenken over ontwerp en algoritmes willen besteden en vervolgens binnen een fractie van de tijd die voor Java nodig was geweest het boeltje geprogrammeerd willen hebben. Tegenargumenten ten faveure van Java zoals 3rd party libraries en de snelheid van JIT gaan niet op, want Jython. Nee, ik weet het niet, misschien omdat Java nog steeds zo populair is in het bedrijfsleven. Maar Java heeft zijn hoogtepunt gehad en gaat langzaam maar zeker het onderspit delven tegen de volgende generatie programmeertalen, zie bijv. de Tiobe index, waar talen als Java en C++ de laatste 10 jaar een dalende trend laten zien terwijl Python, Lua (en C#) een duidelijke stijgende trend kennen. Heb je wel eens met Python gewerkt? Ieder zijn voorkeur, maar dat Pythoncode veel leesbaarder is daar is vrijwel iedereen het wel over eens. | ||||
FkTwkGs2012 | woensdag 6 juli 2011 @ 22:58 | |||
hier ook al trollen. Damn zeg. Ts google ff op c# vs java. Veel nuttige info over 2 goede omgevingen. Niet platformonafhankelijk. Java niet? Je weet waarschijnlijk niet half hoeveel stuff jij gebruikt die een vorm van java gebruiken. Telefoons, navigatiesystemen, medische systemen. Name it. | ||||
Fleischmeister | woensdag 6 juli 2011 @ 23:19 | |||
Ruby is een erg mooie taal. Tenminste echt OO i.p.v. PHP waar het er toch allemaal een beetje in is geprakt naderhand, en waar dingen als metaprogramming niet mogelijk zijn (denk bv. aan bestaande klassen veranderen @ runtime zonder deze te moeten extenden, zodat andere processen de gewijzigde klassen kunne gebruiken zonder van de uitbreiding op de hoogte te zijn.... heel Rails is doorspekt van dat soort dingen wat het een erg clean framework maakt, terwijl ze bv. bij CakePHP worstelen om hetzelfde te doen met PHP). Rekenen met datum en tijd zou trouwens ook wel wat beter mogen in PHP, terwijl in Ruby gewoon de betreffende objecten bij elkaar kan optellen d.m.v. operator overloading. Nou ja, ze hebben bij PHP nu i.i.g namespaces, 15 jaar nadat de andere talen het hadden... beter laat dan nooit zullen we maar zeggen ![]() Dan Python... puike taal op het hele verplichte indenten na dan. "Ja dat verplicht je tot netjes werken!". Misschien, maar het levert wel onnodige ambiguïteiten op. Ik vind het nou juist zo leuk dat ik bv. in Eclipse een coding style kan instellen voor m'n Java, en met 1 key combo al m'n code zo floeps, in de gewenste stijl kan gooien voordat het versiebeheer in gaat. Hoe moet dat met Python als ie niet weet of die niet geïndente regel nou wel of niet bij die ene functie hoort? Beide gevallen zouden geldige code kunnen zijn! Met accolades is het tenminste altijd duidelijk, hoe de whitespace er ook bij hangt. Veel mensen zweren erbij, maar ik heb er na jaren nog niet aan kunnen wennen. Dit terwijl ik binnen een paar weken prima gewend was aan dat zogenaamd 'vage' message passing van Objective-C. De meeste mensen die ermee beginnen die hoor ik over de message passing syntax:
i.p.v. iets als in Java of PHP:
We zijn zo ongelooflijk gewend aan de syntax van voorbeeld twee, dat Objective-C er gewoon alien uitziet voor veel mensen. Merk op dat er bij voorbeeld 1 misschien meer tekst staat, maar dat het wel zichzelf beter uitlegt. Je roept geen methode aan, maar je stuurt een bericht. In dit geval het bericht kist:pak:enDoe. Je ziet dat je aan parameters een naam kan hangen, wat je code zelf juist leesbaarder kan maken doordat je er een betekenis aan hangt. [ Bericht 5% gewijzigd door Fleischmeister op 06-07-2011 23:41:23 ] | ||||
Fleischmeister | woensdag 6 juli 2011 @ 23:30 | |||
Met Java zit je gevangen in hun framework als je platformonafhankelijk wil zijn. Zodra je de leuke OS-services wil gaan aanspreken waarin het framework niet voorziet, dan ben je niet platformonafhankelijk meer. Bijvoorbeeld als je onder OS X van die Java-bindings naar Cocoa (het framework dat je zou moeten gebruiken daar) gaat gebruiken om van de leuke OS X features gebruik te kunnen maken. En dan kan je net zo goed gewoon de boel in Objective-C gaan coden, want werken op Windows en Linux etc. doet het niet meer in die hoedanigheid ![]() Plus: Java heeft de footprint van een olifant in een porseleinkast met die hele VM eronder. Leuk als academisch taaltje om de principes te leren, mede omdat het je genadeloos terugfluit als je niet netjes werkt... maar een serieuze desktop applicatie zou ik er zelf nooit mee schrijven. [ Bericht 66% gewijzigd door Fleischmeister op 06-07-2011 23:39:40 ] | ||||
vriendelijkevriend | woensdag 6 juli 2011 @ 23:40 | |||
Ja, ik heb helaas ooit een p2p-client gemaakt in Python. | ||||
Fleischmeister | woensdag 6 juli 2011 @ 23:51 | |||
Als je inderdaad JavaScript bedoeld en geen Java: ieder zichzelf respecterende frontend webdeveloper heeft frameworks als jQuery in z'n standaard toolkit zitten, waarmee je dergelijke ellende niet meer meemaakt. Veel web frameworks gebruiken dergelijke libraries ook onder de motorkap voor hun AJAX- en effect-abstractie e.d. zodat je niet eens meer JS hoeft te tikken, denk aan de .rjs views in Rails. | ||||
keesjeislief | woensdag 6 juli 2011 @ 23:58 | |||
In de praktijk is dat geen belemmering, omdat je sowieso whitespace gebruikt als je je code een beetje overzichtelijk wilt houden. Het netto-effect is dat je geen haakjes om je blokken hoeft te plaatsen, niets meer, niets minder. | ||||
keesjeislief | donderdag 7 juli 2011 @ 00:00 | |||
Ik had precies de tegenovergestelde ervaring. Ik heb in de loop van de tijd verschillende pogingen gedaan om Java onder de knie te krijgen, maar ik kan echt niet wennen aan alle overbodige rompslompcode en regeltjes (en wilde het ook niet meer vanaf het moment dat ik Python leerde kennen). | ||||
Plus_Ultra | donderdag 7 juli 2011 @ 04:44 | |||
Haskell, Prolog, Java en niet te vergeten . . . . . . . . . . . . . . . . Excel. Pas wel op hoor met deze hobby, voor je het weet ben je voor de rest van je leven vrijgezel. voorbeeld? [ Bericht 15% gewijzigd door Plus_Ultra op 07-07-2011 05:07:36 ] | ||||
Catbert | donderdag 7 juli 2011 @ 09:58 | |||
"Als je platform specifieke dingen wilt doen ben je niet platform onafhankelijk". No shit sherlock ![]() Dat heb je in C net zo goed. Als je in C gebruik maakt van Windows-specifieke functionaliteit dan gaat dat ook niet op Linux werken. Daarom abstraheer je de OS specifieke meuk in een aparte laag, dat geldt voor elk cross-platform project. Maar Java is wel, hoe dan ook, in de basis cross platform. Vergeet niet dat je de gecompileerde classes niet hoeft te hercompileren, dat doet de VM voor je. Als je een desktop applicatie bouwt die onder zo'n beetje alle OSen moet werken ben je gewoon dom als je dat niet in een platform onafhankelijke taal doet. Je bedoelt dus dat je OO programmeren niet snapt en daarom niet doorgezet hebt. Da's dezelfde reden dat een hoop mensen maar in PHP blijven kutten omdat dat wel zo'n lekker 'duidelijke' taal is. Hun argument is ook dat "print "Blaat"; een stuk 'duidelijker' is dan System.out.println("Blaat");. Nou, als dat je 'argument' is, prima. Zulke mensen moeten bij Java wegblijven want die halen alleen maar het gemiddelde niveau omlaag ![]() | ||||
Daeron | donderdag 7 juli 2011 @ 11:06 | |||
Ach, hoe minder Java devvers hoe meer werk er voor mij is ![]() | ||||
FkTwkGs2012 | donderdag 7 juli 2011 @ 11:09 | |||
Een paar simpele devvers die wat roepen zegt nog weinig over de echte wereld. Sorry joh ![]() | ||||
QBay | donderdag 7 juli 2011 @ 11:12 | |||
Altijd leuk die Java vs. Python discussies ![]() Er is geen betere aan te wijzen. Java is een prima taal (al hoewel Oracle er alles aan doet om die taal kapot te maken heb ik het idee, zeer jammer) maar Python is ook goed. Natuurlijk vinden sommige mensen het uiterlijk van Python niks, het inspringen en de syntax is een beetje vreemd als je vanaf Java komt. Door de vreemde (ik zeg geen slechte! Maar het is een vreemde constructie als je vanaf Java o.i.d. komt) constructie van programmeren schrikt het veel mensen af, daarnaast is er imo geen duidelijke IDE zoals bij Java wel het geval is (Eclipse, Netbean, etc.). Python kan net zoals Java ook prima object georiënteerd gebruikt worden, ze kunnen vrijwel hetzelfde. Ik ben begonnen met Java -> C# -> Python -> PHP. Dat ik nu vooral met PHP werk wil niet zeggen dat ik de OO principes niet ken, het komt doordat ik een bijbaan heb gevonden als PHP-programmeur ![]() | ||||
keesjeislief | donderdag 7 juli 2011 @ 12:50 | |||
![]() Ach, er zijn talloze voorbeelden, maar een ding wat ik me nog duidelijk herinner is dat gekloot met verschillende constructors. Neem dit voorbeeldje van internet, een class Employee die met een verschillend aantal argumenten geinitieerd kan worden. In Java krijg je:
In Python is dat veel simpeler en eleganter:
| ||||
Catbert | donderdag 7 juli 2011 @ 12:54 | |||
Dat ik Perl gebruik om een bak tekst te om te klussen betekent ook niet dat Perl een goede taal is om mee te beginnen. Nou, wat een verschil. Alsof daar je tijd in gaat zitten bij het coden. | ||||
retorbrapi | donderdag 7 juli 2011 @ 13:12 | |||
Dat lijkt me geen reden om een taal 'verschrikkelijk' te vinden. Als het al zo'n verschil uitmaakt zou ik het eerder een voordeel vinden, want het maakt de code veel duidelijker. Ik vraag me echt af wat de redenen van Trollface zijn want ik vind het zelf echt een hele plezierige taal. | ||||
Raven_NL | donderdag 7 juli 2011 @ 13:55 | |||
Ik denk dat ik als Microsoft certified engineer wel weet waar ik over praat ja. Java is een interpreter taal net als basic. Dat de code in een andere verborgen taal wordt omgezet om dit te verbergen doet uiteraard niet terzake. Dit is ook een van de belangrijkste verschillen in werking tussen C# (.NET framework) en java C# is WEL een taal die naar machinecode gecompileerd wordt. En noem eens EEN groot stand alone programma dat in java geschreven is... | ||||
keesjeislief | donderdag 7 juli 2011 @ 14:03 | |||
Python is een uitstekende taal om mee te beginnen. Ik heb echt geen zin om alle argumenten nog een keer te gaan herhalen, hier staat bijv. een goed stuk van een Amerikaanse prof. CS en hier een stuk tekst van een mailing list:
Ja, dat gaat het, samen met die honderden andere kleinere en grotere voorbeelden van constructies waarin Python eleganter en intuitiever is. Daarom ook zo'n 5-10 maal minder regels code in Python voor dezelfde taak. | ||||
Raven_NL | donderdag 7 juli 2011 @ 14:14 | |||
Python is goud waard, maar wordt meestal gebruikt als script taal in een of andere toepassing die dus in een andere programmeertaal echt gemaakt wordt. Bijvoorbeeld Blender: Geschreven in C/C++ en gebruikt Python als script taal voor add ons en dergelijke. Als je in een team mee wil doen is Python zeker de moeite waard. Het is echter niet bedoeld om complete programma's te schrijven | ||||
Catbert | donderdag 7 juli 2011 @ 14:16 | |||
Sorry maar dat geeft dus goed aan wat het niveau is van een gemiddelde "CS" study daar. Je leert daar niet hoe dingen werken, je leert hoe je een library gebruikt die iemand anders voor je gemaakt heeft. Dat is niet leren programmeren. De taal boeit hier overigens weinig in, ik vind alleen het gezeur over hoe geweldig Python wel niet is gewoon irritant, het is niks bijzonders. Net zoals mensen die los gaan over Scala. "Kijk eens hoe weinig regels code", ja, maar is het leesbaar? Leren programmeren is leren hoe dingen werken. Dus in plaats van een resize library te gebruiken, leer dat eens ZELF pixel voor pixel te doen. In plaats van een linked list te gebruiken, leer er eerst ZELF eens een te maken. Dat is informatica, en niet dat gesufkut van tegenwoordig waar je maar een paar libraries tegen je probleem aan gooit in de hoop dat dat de oplossing is. Het maakt in deze ook weinig uit of je begint in Perl, Python, Java, C# of C++, als je maar de juiste opleiding krijgt. Ik vind Smalltalk een nog betere taal om mee te beginnen, hoewel je daar in "het echt" ook niet snel mee zult gaan werken. Leren programmeren is leren hoe bepaalde constructies werken, zoals algorithmes, OO programmeren en design patterns herkennen. Als de geschiktheid van een taal afhangt van hoe 'makkelijk' een image bewerkings library is, dan zit er in de belevingswereld van de docent iets compleet scheef, en dat past goed bij het hedendaagse HBO (en de vergelijkbare studies in de VS). Post er eens een paar dan? | ||||
Daeron | donderdag 7 juli 2011 @ 14:16 | |||
![]() Dan zou ik toch eens heel gauw je certificaat inleveren want C# is net als Java een taal die naar bytecode omgezet wordt en daarna met een JIT compiler runtime wordt omgezet naar machine code. ![]() | ||||
Catbert | donderdag 7 juli 2011 @ 14:17 | |||
Inderdaad. Nooit van MSIL gehoord kennelijk. | ||||
kingmob | donderdag 7 juli 2011 @ 14:21 | |||
Leer 1 taal en je kent het principe bij allemaal imo. Ik zou een taal enkel kiezen met het oog op wat je wil ontwikkelen. Dan komt er tegenwoordig bijna altijd een taal als Java of C# uit (misschien python oid als je wat simpels wil maken). C++ enkel nog als geheugenmanagement belangrijk is en je volle controle wil hebben. C is alleen voor de freaks nog nuttig, kun je bijna net zo goed assembly code gaan schrijven ![]() Tot zover mijn tip, kort gezegd, het maakt geen zak uit, net wat je nodig hebt. | ||||
Raven_NL | donderdag 7 juli 2011 @ 14:24 | |||
Kan je alleen maar dom doen ? C# ( en andere .NET code) wordt eenmalig gecompileerd voor de machine waar het programma op gaat draaien. Alleen als code of framework veranderen is nieuwe compilatie nodig. Java wordt omgezet naar bytecode die vervolgens regel voor regel tijdens de uitvoering wordt geinterpreteert voor de java virtual machine. Er zijn op dit punt behoorlijk wat verschillen tussen C# en java.. Maarja een C# ontwikkelaar rijdt ook meestal in een dikkere auto dan een java programmeurtje | ||||
Catbert | donderdag 7 juli 2011 @ 14:24 | |||
Ik denk dat je sowieso beter niet met C++ kunt beginnen. Later C++ leren is IMHO een aanrader, net zoals iedere goeie programmeur IMHO wel eens dingen in assembly gedaan heeft, maar om mee te beginnen nee. Ik weet nog dat ik toen ik met C++ begon gewoon 2 dagen bezig ben geweest met een suffe fout van me (schrijven naar geheugen dat als "read only" gealloceerd was ofzo) en doodleuk een "kernel panic" voor m'n neus kreeg. Dan is Java (of C#) toch een heel stuk n00b-vriendelijker ![]() | ||||
Raven_NL | donderdag 7 juli 2011 @ 14:25 | |||
Juist.... ![]() | ||||
Catbert | donderdag 7 juli 2011 @ 14:27 | |||
.Net spul wordt naar MSIL gecompileerd, java naar bytecode. Beiden zijn binaire-code 'like' die dan door de VM (ja, .Net heeft ook een VM) omgezet worden naar platform-specifieke binaire code. Java wordt net zo goed als .Net at runtime omgezet naar platform specifieke code. En dat laatste is gewoon een ronduit trieste opmerking. Als je het ergens niet mee eens bent, vertel gerust. Maar met zo'n opmerking kan ik niet zo veel. | ||||
Daeron | donderdag 7 juli 2011 @ 14:31 | |||
http://en.wikipedia.org/wiki/Common_Intermediate_Language Tadaa, Java en C# (of eigenlijk elke .Net taal) worden beide naar bytecode omgezet en daarna runtime omgezet met een JIT-compiler. Kortom, lever je certificaat maar in of ga ff ergens anders lopen trollen. Klapjosti ![]() | ||||
Pheno | donderdag 7 juli 2011 @ 14:32 | |||
Ik zie in de OP dat C en C++ als platformonafhankelijk worden gezien door TS. Maar een C-programma gecompileerd op windows gaat op mijn mac niet werken, ik zal moeten hercompileren.Wat klopt daar niet aan? Waarom zou je iemand die net begint memory management door de strot heen duwen? Sowieso, ik wil me er niet eens mee bezig houden, de klant betaalt voor functionaliteit, niet voor basale dingen die ook voor je gedaan kunnen worden ![]() | ||||
Catbert | donderdag 7 juli 2011 @ 14:32 | |||
Geeft wel een beetje het niveau aan van die MS opleidingen ![]() Mensen hebben verschillende definities van platform-onafhankelijk. Java kan platform-afhankelijk zijn als je platform-afhankelijke libraries gebruikt. C++ code (niet de binaries) kan platform-onafhankelijk zijn; applicatie die alleen van de standaard libs gebruik maakt kun je zonder wijzigingen voor zowel windows als linux compileren. Voor en tegenstanders (wat an sich al triest is, 'tegen' een programmeertaal zijn) van bepaalde talen hanteren verschillende definities al naar gelang wat hun het best uitkomt. | ||||
Daeron | donderdag 7 juli 2011 @ 14:33 | |||
Platformonafhankelijkheid wil niet per definitie zeggen dat het op andere platformen kan draaien zonder opnieuw te compileren. Als het goed is kan je trouwens gewoon onder Windows je C applicatie compilen voor het Mac OS platform en andersom. ![]() | ||||
Catbert | donderdag 7 juli 2011 @ 14:36 | |||
Dat is de definitie van platform-onafhankelijk die bijvoorbeeld Sun voor Java gebruikt. Er is niet maar 1 definitie, ieder heeft zo z'n eigen definitie. | ||||
Pheno | donderdag 7 juli 2011 @ 14:38 | |||
Ik zie platformonafhankelijk als overal te draaien zonder hercompilatie, anders ben je het eenvoudigweg niet. Je bent als programma toch afhankelijk waarop je gecompileerd bent en waar je op dat moment gaat draaien ![]() | ||||
Raven_NL | donderdag 7 juli 2011 @ 14:39 | |||
Dat BLIJFT een compromis... en zal nooit zo goed werken als een specifiek voor een machine geschreven programma in C++ bv | ||||
Pheno | donderdag 7 juli 2011 @ 14:39 | |||
Dat klopt, maar ik ben het eens met Sun. Ik moet een programma kunnen compileren op een as/400 en kunnen gebruiken op een windows machine, sort a speak. | ||||
Litpho | donderdag 7 juli 2011 @ 14:41 | |||
Bubblesort a speak? Quicksort a speak? | ||||
Catbert | donderdag 7 juli 2011 @ 14:43 | |||
Met "goed werken" bedoel je puur snelheid. Klopt, C++ is typisch sneller dan de andere mainstream talen, met Java als close second: http://shootout.alioth.de(...)on&php=on&calc=chart Maar pure snelheid is in heel veel projecten niet de voornaamste reden om het te gebruiken, vooral omdat de snelheid van de (web)applicatie zelf sowieso geen bottleneck is. | ||||
Pheno | donderdag 7 juli 2011 @ 14:44 | |||
Op de uni hebben ze vast wel weer een of andere theoretisch snellere sort. Niet dat iemand die wil implementeren, want elke fatsoenlijke taal heeft al een geoptimaliseerde en door en door geteste sort-functionaliteit ![]() | ||||
Pheno | donderdag 7 juli 2011 @ 14:46 | |||
Snelheid van oplossend programmeren lijkt me belangrijker. Als je goed bent in C pak je dat, ben je goed in java, doe je dat. Dat eeuwige gejank over welke taal de beste is. Er is geen beste, want dan zou iedereen die gebruiken ![]() | ||||
Catbert | donderdag 7 juli 2011 @ 14:48 | |||
Sure. Maar je moet wel weten hoe dergelijke algorithmes werken puur om te kunnen apprecieren dat het behoorlijk bewerkelijk is. Als je het puur als een "call" naar een library ziet, heb je gewoon niet door dat er redelijk wat number-crunching bij komt kijken. Als je het aan het ontwikkelen bent merk je niet dat je inefficient bezig bent, dat merk je pas als de app server bij 10 concurrent users het geheel onverwacht spaans benauwd krijgt. Van de week een junior consultant nog moeten helpen omdat 'ie in een WS voor iedere request opnieuw database connections zat te openen bijvoorbeeld. Eensch. Persoonlijk vind ik Java het 'best' voor back-end stuff, vooral omdat daar enorm veel voor te vinden is aan open source spul dat gewoon goed werkt, en .Net erg sterk is voor mooie webapplicaties. Zijn genoeg projecten waar dat ook gewoon prima samenwerkt. Al het ESB spul is Java, alleen de webapplicatie is .Net. | ||||
Daeron | donderdag 7 juli 2011 @ 14:51 | |||
Is trouwens geen garantie. Heb laatst een keer een aantal xml databases tegenover elkaar gebenchmarked voor een project op de uni. Bleek dat een db engine geschreven in Java sneller presteerde dan een db engine geschreven in C++. Kortom, de taal zegt niets over de efficiëntie of werkbaarheid van de applicatie. Ik sluit me aan bij de heersende conclusie, programmeren is eerder een mindset die je hebt dan je kunsten in een bepaalde taal. | ||||
Catbert | donderdag 7 juli 2011 @ 14:54 | |||
SQLite versus HSQL toevallig? Nee, de ontwikkelaar des te meer ![]()
![]() | ||||
Daeron | donderdag 7 juli 2011 @ 14:55 | |||
XML Databases dus geen SQL maar xquery ![]() Maar dat waren sedna en basex voor de geïnteresseerden onder ons. | ||||
Catbert | donderdag 7 juli 2011 @ 14:58 | |||
Over het XML deel heengelezen ![]() | ||||
keesjeislief | donderdag 7 juli 2011 @ 14:59 | |||
Nou, inderdaad, die rukkers van MIT bijvoorbeeld. Oh wacht, hun programma wordt gezien als een van de beste in de US. ![]() Zodat jij er weer over kunt zeggen dat je het geen probleem vindt en dat het niet belangrijk is? Dag. ![]() en
| ||||
retorbrapi | donderdag 7 juli 2011 @ 15:03 | |||
De taal is platformonafhankelijk, het programma niet | ||||
Pheno | donderdag 7 juli 2011 @ 15:05 | |||
De vraag van TS was toch met welke taal hij best kon beginnen? Geen idee waarom je cijfers over productiviteit erbij haalt, dat is namelijk voor ene beginner totaal irrelevant. Wil je snappen wat objecten zijn, dan is een in jouw ogen minder productieve taal handiger. Ook geen frameworks als Spring of weet ik wat, maar gewoonweg Java of C++. Daarna kun je altijd nog naar een andere taal springen. Oke, op die fiets. Ik denk in resultaat, vandaar dat ik het vreemd er uit vind zien. Ik programmeer niet om de code, maar om een applicatie te maken ![]() | ||||
keesjeislief | donderdag 7 juli 2011 @ 15:10 | |||
Waarom? Omdat jij het categoriseert als een 'scripttaal'? Je kunt er alles mee doen wart je maar wilt. Geen beperkingen. Paar voorbeelden van http://www.python.org/about/quotes/:
| ||||
Catbert | donderdag 7 juli 2011 @ 15:10 | |||
Euh, je linkt naar een computertechniek opleiding, niet naar een informatica opleiding. Wat deze mensen leren is vooral elektrotechniek. M'n vader heeft een soortgelijke opleiding gedaan, en hij is gewoon Elektrotechnicus. MIT is een van de leidende engineering instituten op de wereld maar de focus ligt daar niet op het leveren van de volgende lichting Java programmeurs. Als je wil leren programmeren moet je ook niet aan de UT gaan studeren. Het stukje "In general, the differences between languages tend to be smaller than the typical differences due to different programmers within the same language." laat je voor het gemak maar even weg? ![]() Waar komt toch altijd die bewijsdrang van Python aanhangers vandaan? Het is een prima taal hoor, maar het is niet "beter" of "slechter" dan Java perse. Natuurlijk staan op die site dat soort quotes, quotes in de trant van "we hebben Python bekeken maar het mist de hoeveelheid meuk die al voor Java bestaat dus we laten het hier bij" zul je niet zien. Dat is gewoon marketing. op onze site staan ook quotes van klanten die een positiever beeld geven dan wat de werkelijkheid is wat betreft hun mening over ons. | ||||
keesjeislief | donderdag 7 juli 2011 @ 15:14 | |||
Daar ging de discussie al niet meer over. Daarnaast is mijn link erg relevant voor TS, omdat die aangeeft dat Python door MIT wordt gebruikt in een van hun eerste colleges voor studenten electrical engineering. Een goede onderbouwing van het feit dat Python een heel geschikte taal is om mee te beginnen. | ||||
Pheno | donderdag 7 juli 2011 @ 15:17 | |||
Hij wil desktop-apps schrijven? Ik kan ook Prolog gaan aanbevelen, maar dat is ook alleen maar zinvol in bepaalde gebieden ![]() | ||||
Catbert | donderdag 7 juli 2011 @ 15:21 | |||
Idd. Voor Windows desktop-apps zou ik ook eerder .Net aanraden dan Java. | ||||
keesjeislief | donderdag 7 juli 2011 @ 15:23 | |||
TS wil leren programmeren zonder een informaticus te worden, precies zoals die studenten op MIT. Hij zit veel dichter bij jouw vader en bij mij, die snel en productief een programmeertaal willen gebruiken waarmee ze alles kunnen doen wat ze willen, dan bij suffe informatici die het vanuit een theoretischer perspectief bekijken. Zucht. Kijk nou eens naar de post die ik quotte. Daarin wordt beweerd dat Python slechts een scripttaaltje is en ongeschikt voor 'hele programma's'. Als ik daarop reageer met een aantal quotes waaruit duidelijk wordt dat Python gebruikt wordt voor heel grote projecten heb ik opeens 'bewijsdrang'. ![]() | ||||
keesjeislief | donderdag 7 juli 2011 @ 15:26 | |||
Ja, of een van de andere miljoenen talen waarmee dat kan. ![]() ![]() ![]() ![]() ![]() | ||||
keesjeislief | donderdag 7 juli 2011 @ 15:29 | |||
Je zit het hele topic te spugen op het feit dat Python te simpel is om 'goed te leren programmeren', en nu raad je .net aan, wat betekent dat TS een IDE gaat downloaden en met klikkerdeklak formpjes in elkaar gaat plakken? Serieus? ![]() | ||||
Pheno | donderdag 7 juli 2011 @ 15:38 | |||
Je hoeft niet te prediken hoor, daar ben ik immuun voor. Het leuke is dat elke taal zegt bovenstaande te zijn namelijk ![]() Zie hoe het java vergaan is, het is echt geen mooie en zeker geen compacte taal, maar ja, ik heb er lol mee door allerlei frameworks die de taal compact maken ![]() | ||||
EggsTC | donderdag 7 juli 2011 @ 15:49 | |||
Vroeger Visual Basic en C++ Nu AutoIT, zeer sterk in het koppelen van systemen aan elkaar. Een soort van macro tooling is het maar je kan er ook gewoon andere tooling mee maken. Erg krachtig. Nadeel is dat het alleen Win32 geschikt is. | ||||
keesjeislief | donderdag 7 juli 2011 @ 15:50 | |||
Ja en? Dat klinkt als een oude opa die de oorlog heeft meegemaakt en zijn kleinkinderen geen speelgoed gunt omdat hij dat ook nooit gehad heeft en ze zo wil leren dat het allemaal heus niet uit de lucht komt vallen. Het is een onzinargument. Je gaat toch ook niet in een assemblytaal zitten programmeren om "eens even goed te leren hoe je elke bit het meest efficient kunt gebruiken! ![]() | ||||
themole | donderdag 7 juli 2011 @ 15:52 | |||
Voor een programmeur is het zeker niet verkeerd om eens in assembly te programmeren, dan leer je pas echt hoe een computer in de basis in elkaar zit. Iets wat veel programmeurs die alleen in hogere orde talen programmeren niet meer weten. ![]() ![]() | ||||
keesjeislief | donderdag 7 juli 2011 @ 15:54 | |||
Nou, kom maar op met een feit van belang over de werking van computers dat ik niet weet en jij wel. | ||||
EggsTC | donderdag 7 juli 2011 @ 15:58 | |||
Hij heeft wel gelijk, je komt dichter tegen de hardware aan te zitten met ASM. Je kan bijvoorbeeld zien welke memory adressen er aangestuurd worden door bepaalde handelingen, iets wat je met C++ niet echt snel zal tegen komen. Het geeft een completer beeld. | ||||
Pheno | donderdag 7 juli 2011 @ 16:00 | |||
Wil je mijn oorlogswond zien? ![]() ![]() Je klinkt als een goede voor Windows vs Mac, Unix vs de rest en meer van dat soort 'discussies' waarin iedereen dingen wil opdringen aan een ander. Als Python zo enorm goed zou zijn zou iedereen al lang over zijn, scholen massaal C++ en Javaboeken gaan verbranden etc. Er is geen beste taal, er zijn alleen goede ontwikkelaars. | ||||
themole | donderdag 7 juli 2011 @ 16:13 | |||
Ik zeg niet dat jij het niet weet, echter ik denk dat veel programmeurs en ontwikkelaars de architectuur rondom de processor toch echt niet goed kennen. Het kan heel handig zijn om te weten wat er diep in de computer gebeurt als jij iets gaat optimaliseren. Overigens vind ik dit ook een onzinnige discussie. Je kan in elke programmeertaal instappen zolang je maar een goed boek hebt over de basis van programmeren. ![]() | ||||
keesjeislief | donderdag 7 juli 2011 @ 16:17 | |||
Nog steeds geen voorbeelden? | ||||
Catbert | donderdag 7 juli 2011 @ 16:19 | |||
Nogmaals, bewijsdrang much? Ik vind Java een betere leertaal dan Python. Ondanks dat sommige dingen wat omslachtiger zijn, wordt je bij Java meer gedwongen OO te programmeren en vooraf te bedenken of iets een String of een int oid is. Ik "spuug" niet op Python, ik vind het voor mezelf niet echt een toegevoegde waarde hebben. Tools maak ik in Java meestal, simpele scripts meestal in Perl. Op dit is in dit onderwerp de exacte taal waarin je dingen leert redelijk ondergeschikt aan HOE je dingen leert. Als je een goeie leraar hebt, maakt het geen zak uit. Als je jezelf dingen aan gaat leren, dan kun je beter niet met een taal bezig gaan die je alles maar leert doen. Ik ben toen ik 15 was in Qbasic geworden en heb me toen ik me met Java bezig ging houden een hoop dingen af moeten leren. Wat betret GUI programmeren: ik raad mensen sowieso af om met GUIs te beginnen. Maar als je desktop apps wilt bouwen en de keuze hebt tussen C# en Java, zou ik voor C# gaan. Snap je het voordeel niet van begrijpen wat er van die Java (of wat dan ook) code door je compiler gemaakt wordt echt niet? | ||||
EggsTC | donderdag 7 juli 2011 @ 16:26 | |||
Hardware debugging. | ||||
HostiMeister | donderdag 7 juli 2011 @ 16:27 | |||
Jeetje wat een kinderachtig gejank hier ![]() Een Hoogleraar zei ooit zo tegen me, als je een flat wil bouwen heb je andere tools nodig dan als je een deurpost moet repareren. Voor het de flat gaf hij als tool Java en voor de deuropening Python. Stel je eens niet zo aan. | ||||
QBay | donderdag 7 juli 2011 @ 16:30 | |||
Mwa, ben het voor het grootste deel wel met je eens, maar over het algemeen wordt Python als makkelijker beschouwd. Ik weet ook niet precies waarom veel mensen Python als makkelijker beschouwen, het gebrek aan een goede IDE zoals bijvoorbeeld Eclipse stoorde mij enorm (je hebt/had wel iets van Wing o.i.d....maar dat zoog als IDE volgens mij). Ik denk dat de meeste Python als makkelijker beschouwen omdat ze pas later met OO in aanraking komen, iets waar je bij Java/C# gelijk rekening mee moet houden. Persoonlijk vind ik Java of Python niet beter dan de andere. Met Python kan je ook complete applicaties (en zelfs games...zie Unknown Horizons) bouwen, al zie je deze applicaties een stuk minder dan Java applicaties. Wat een persoonlijk gevoel is (heb geen keiharde onderbouwing), is het feit dat beide talen niet erg snappy voelende applicaties oplevert. Applicaties in Python en Java voelen wat log en traag. C# applicaties voelen wat dat betreft sneller. maar nogmaals, dat is persoonlijk waarschijnlijk. Voor een beginneling zou ik ook Java aanbevelen, vooral omdat het multiplatform is. Als blijkt dat het abstractieniveau van Java nog wat te hoog gegrepen is, probeer dan Python eens. Via Python leer je uiteindelijk hetzelfde, alleen duurt het wat langer voordat je in aanraking komt met OO principes. Beide talen zijn prima. Ik vind iemand die programmeren 'geleerd' heeft via Java niet beter of slechter dan iemand die met Python is begonnen. Programmeren draait om het abstract kunnen denken, problemen oplossen en mensen tevreden stellen. Welke taal je daarbij gebruikt boeit niet. | ||||
themole | donderdag 7 juli 2011 @ 16:34 | |||
bron:http://onlamp.com/pub/a/onlamp/2004/05/06/writegreatcode.html Niet voor niets dat de TU Delft hun informatici nog altijd assembly leert. ![]() [ Bericht 0% gewijzigd door themole op 07-07-2011 16:40:17 ] | ||||
Core2 | donderdag 7 juli 2011 @ 16:57 | |||
Waarschijnlijk heeft dat meer te maken met het bouwen van compilers voor bepaalde processoren (embedded devices enzo). Je moet dan wel enige kennis hebben van assembly. Of het je echt een betere programmeur maakt als je in een willekeurig high level taaltje werkt betwijfel ik. | ||||
Catbert | donderdag 7 juli 2011 @ 17:15 | |||
Op zich mee eens, maar als ik naar mezelf kijk denk ik toch dat je als je niet begint met OO 'denken' het juist moeilijker is later om te schakelen dan wanneer je begint met een "een Auto heeft view Wielen en is een Voertuig"-achtige concepten. Verder vind ik strongly typed talen een must. Als ik ergens een hekel heb is het wel PHP scripts waar vars op het ene moment gebruikt worden als counter en een stuk later voor de inhoud van een textbox misbruikt worden. Python zal best een fijne taal zijn, maar ik vind bepaalde dingen gewoon ergerlijke keuzes, zoals whitespaces en underscores die een betekenis hebben. Niet dat dat het een slechte taal maakt, maar ik vind dat persoonlijk (en dat zal vast met m'n C++/Java/.Net achtergrond te maken hebben) eigenlijk een enorme WTF. Ik denk juist dat kennis hebben van de werking van een CPU maar ook de werking van bepaalde algorithmen (hoe doorzoek ik een boom, hoe sorteer ik een array) belangrijk is omdat je dan als het ware instinctief weet wat dure en goedkope operaties zijn. Niet dat je dat automatisch een goeie programmeur maakt, maar omgekeerd denk ik dat goeie programmeurs dat ook zelf interessant vinden en dat soort dingen graag willen weten. | ||||
Core2 | donderdag 7 juli 2011 @ 18:08 | |||
Een goede analyse van de complexiteit van het algoritme is dan belangrijker. Wat heeft het doorzoeken van een boom met wat low level instructies te maken, hoe helpt die kennis je dan? Het is belangrijker om te analyseren wat het algoritme precies doet met welke running time (worst case, average case, etc) en met wat voor een soort input je te maken hebt. De vraag of je een bepaalde statement of expressie dan anders moet formuleren voor optimalisatie is dan echt ondergeschikt. [ Bericht 2% gewijzigd door Core2 op 07-07-2011 18:14:05 ] | ||||
Catbert | donderdag 7 juli 2011 @ 18:32 | |||
De werking van een algorithme is een parallel met de werking van een CPU, volgens mij was dat wel duidelijk. Je kunt een bepaald algorithme prima gebruiken zonder te weten hoe het werkt, maar ik denk wel dat dat belangrijk is. Dit geldt in zekere mate, vind ik tenminste, ook voor snappen hoe een computer low level met instructies omgaat. | ||||
keesjeislief | donderdag 7 juli 2011 @ 18:39 | |||
Python wordt als makkelijker gezien omdat er veel minder 'boilerplate' code nodig is, de code (o.a. daardoor) leesbaarder is en de taal goed aansluit bij je intuitie. Verder zijn er (inmiddels?) uitstekende editors beschikbaar, maar tegelijkertijd is het juist een illustratie van de eenvoud van de taal dat je helemaal geen (geavanceerde) editor nodig hebt. Huh? Hoe is deze lijst niet multiplatform? | ||||
QBay | donderdag 7 juli 2011 @ 19:21 | |||
Het is al een tijd geleden hoor dat ik met Python heb gewerkt, dus als jij zegt dat er nu betere IDE's zijn dan geloof ik je ![]() Python is ook multiplatform inderdaad, dus ook een prima taal. Ik verkies alleen Java boven Python omdat je meer en eerder gedwongen wordt om aan object georiënteerd programmeren te doen, iets wat zeker voor een beginner handig is. | ||||
ralfie | donderdag 7 juli 2011 @ 21:48 | |||
OO is een hulpmiddel, geen doel. Zie niet in dat dwang tot gebruik van OO een goede eigenschap is voor een taal. Eerder een negatieve. | ||||
Pietverdriet | donderdag 7 juli 2011 @ 22:47 | |||
Kan je ook uitleggen waarom? | ||||
Catbert | donderdag 7 juli 2011 @ 22:53 | |||
Ja, want een mix tussen OO en niet OO in een applicatie leidt tot leesbare en onderhoudbare code. | ||||
thabit | donderdag 7 juli 2011 @ 22:54 | |||
Dat WTF-gevoel had ik ook toen ik Python voor het eerst zag, maar na er 2 dagen mee gewerkt te hebben begon ik het stiekem wel briljant te vinden. | ||||
Beelzebufo | vrijdag 8 juli 2011 @ 10:27 | |||
De meeste talen hebben wel een WTF-component. Neem nou COBOL waarin je records kan maken met meerdere definities. En niemand die je tegenhoudt om definitie 1 te gebruiken om het record te vullen en vervolgens definitie 2 om het uit te lezen. Kan verdraaid handig zijn, maar is zóóó lastig om te debuggen... | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 10:34 | |||
Er is natuurlijk ook een groot verschil tussen even iets voor jezelf programmeren en het programmeren samen met een team van andere programmeurs van software die onderhouden moet worden. Als je wat ontwikkeld voor HPUX bijvoorbeeld kan je enorm veel geld besparen door in Java te ontwikkelen omdat je dan op een ander platform kan ontwikkelen en niet scheel betaald aan licenties voor HP Verder heeft Java het voordeel dat de hele geheugenshit veel minder bugs veroorzaakt en je daardoor minder geld kwijt bent aan debuggen. | ||||
Fleischmeister | vrijdag 8 juli 2011 @ 10:44 | |||
Ik met Objective-C ![]()
Python en Ruby zijn weer vrij goede talen voor webdevelopment vind ik. De andere semantiek van sommige whitespace in Python blijf ik vaag vinden, maar het is wel consistent allemaal, het werkt voorspelbaar. Ruby net zo, alles is een object, ook constanten... iets als
irb(main):001:0> d = Date.today => Fri, 08 Jul 2011 irb(main):002:0> d + 1.week => Fri, 15 Jul 2011 irb(main):003:0> d + 1.month => Mon, 08 Aug 2011 Daar word ik gewoon blij van. Geen gekut met unix timestamps meer, gewoon rekenen met objecten. PHP is wat dat betreft een stuk beperkter, en de API is inconsequent (strpos vs. str_replace, needles en haystacks niet altijd dezelfde volgorde e.d., het doet aan als een berg willekeurige functies die bij elkaar gegooid zijn). Met een OO-implementatie die er naderhand als een soort plakband bovenop is geplakt. Zolang je maar consequent werkt en het niet door elkaar gebruikt. Daar hebben veel PHP-developers een handje van, omdat de taal het toelaat en ze lui zijn. Niks mis met een taal die gewoon een bepaalde denkwijze opdringt. Als je zelf wil bepalen wat je doet, dan kan je gewoon Perl gebruiken om je geheimtaal te schrijven waar de rest van je team niks van begrijpt ![]() [ Bericht 1% gewijzigd door Fleischmeister op 08-07-2011 10:58:17 ] | ||||
kingjotte | vrijdag 8 juli 2011 @ 10:54 | |||
Ik weet niet waar je dat aan het doen bent maar bij de Fontys in Eindhoven valt het assembly en cisco gehalte erg mee (non existent). @Lijstjes: Nadelen van scripttalen: minder krachtig Voordelen C#: Brede ondersteuning Goede tools Veel voorbeelden Nadelen C#: Windows only (je kunt wel wat met mono, maar niet alles) | ||||
darpios | vrijdag 8 juli 2011 @ 11:02 | |||
Native assembly is een beetje overkill voor desktopmachines. Inline assembly in C wil ik nog wel geloven voor extra performance. Of je moet shit gaan schrijven voor handheld ARM- en Z80-cores machines waar goede performance nog uitmaakt. Sowieso zit je dan met een compleet andere instructieset dan op Intel processoren. PHP voor allround webapplicaties, C en C++ voor cross-platform desktopapplicaties, Python, Perl en Bash voor grof aankutwerk. Ik heb niks met dat hele .NET/C# en Java, veel te omslachtig voor mij. | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 11:05 | |||
Beetje kort door de bocht wat ik nu zeg, maar Java is C++ zonder de geheugenellende. | ||||
darpios | vrijdag 8 juli 2011 @ 11:08 | |||
Deels eens, alleen ik heb liever controle over wat ik met mijn geheugen doe. C++ maakt het wel een stuk makkelijk met new/delete (helemaal bij arrays) dan C met malloc/realloc/free. | ||||
Catbert | vrijdag 8 juli 2011 @ 11:11 | |||
Waarom wil je welke controle over je geheugengebruik dan? Ik ken wel hele specifieke toepassingen waar het nuttig kan zijn, maar ik zie in de meeste gevallen echt het voordeel niet van zelf je geheugen beheren en het levert vaak gewoon enorm irritante bugs op. Memoryleaks zijn na threading issues (race conditions, deadlocks e.d.) wel de meest lastige bugs IMHO. | ||||
Core2 | vrijdag 8 juli 2011 @ 11:16 | |||
Dat inderdaad. Ik denk ook dat je op z'n best even goede performance krijgt als een garbage collector als je zelf aan de gang gaat met geheugenbeheer, of je moet erg goed zijn. | ||||
Fleischmeister | vrijdag 8 juli 2011 @ 11:17 | |||
PHP voor allround webapplicaties, en Python voor grof aankutwerk? ![]() Ooit gehoord van Django? | ||||
darpios | vrijdag 8 juli 2011 @ 11:18 | |||
Ja. | ||||
kingmob | vrijdag 8 juli 2011 @ 11:34 | |||
Ik ben geen programmeur van huis uit, maar heb wel een tijdje complex programmeerwerk gedaan. In mijn ervaring wist ik altijd al instinctief waar de pijnpunten lagen. Je zit de ganse dag op de automatische piloot te werken, waar zo ongeveer het enige van belang is dat je gestructureerd aan de slag gaat. Iedereen is dolblij als hij echt tegen een complex stukje aanloopt en dat wordt gelijk druk bij de koffie bediscussieerd. Ik gooi er mijn eigen ramen wellicht mee in voor de toekomst (programmeren is mijn fall-back cariere ![]() Ik droom nog steeds van een taal en IDE waar je min of meer alleen klikkerdeklak op high level doet en enkel echt bijzondere zaken zelf moet implementeren. Min of meer een extrapolatie van de huidige evolutie van talen, als je bijvoorbeeld C, C++ en C# bekijkt. | ||||
Catbert | vrijdag 8 juli 2011 @ 11:53 | |||
Op een gegeven moment heb je alle "problemen" wel een beetje gezien en is het voor het grootste deel vooral een hoop typwerk. Da's voor mij ook de reden dat ik meer richting de business consultancy ga, in die zin is "programmeren" voor mij ook m'n 'backup'. Helaas is dat wel waar ik veruit de meeste joboffers in krijg ![]() | ||||
thabit | vrijdag 8 juli 2011 @ 11:56 | |||
Tja, Programmeren is niets meer en niets minder dan een sociaal vangnet voor bèta's. | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 12:05 | |||
Het is gewoon werk. | ||||
QBay | vrijdag 8 juli 2011 @ 12:39 | |||
In Java/C# kan je net zo snel en makkelijk memory leaks krijgen...ondanks de garbage collection ![]() Python voor grof aankutwerk? Ik verbaas me er ook over dat sommige Python echt als waardeloos zien. Het is in begin een beetje een vreemde taal, maar Python is echt wel geschikt voor gestructureerde programma's. Programmeren is best lastig hoor. Als je de juiste denkwijze en het gewenste abstractie-niveau niet hebt, krijg je een lastige taak als programmeur. De taal is niet het moeilijkste, het gaat om het aanpassen en trainen van je hersenen. Zodra je het juiste gevoel te pakken hebt gaat alles een stuk makkelijk inderdaad. Een klikkerdeklak IDE is niet mijn droom, dan heb je echt niks meer te doen en meestal produceert het bagger code. Het kan, als je echt goed bent en ervaring hebt, best goed verdienen ![]() | ||||
darpios | vrijdag 8 juli 2011 @ 12:42 | |||
Een taal kunnen gebruiken voor grof aankutwerk != waardeloze taal. | ||||
Catbert | vrijdag 8 juli 2011 @ 12:48 | |||
Grappig maar je weet ook wel dat je daar in Java redelijk je best voor moet doen ![]() | ||||
Trollface. | vrijdag 8 juli 2011 @ 13:26 | |||
De syntax die totaal niet logisch bij C past (ik noem een + en een - om te bepalen of een method statisch of niet is), de onnodige verbositeit soms, [[object alloc] init]. Verder is wat mij betreft weinig op te merken aan de taal - al weet ik niet wat ik van de dynamic typing moet denken dat het kennelijk ondersteunt. Misschien had ik het ook ietwat verkeerd verwoord - ik vind de taal an sich niet verschrikkelijk, maar voornamelijk de syntax en gedeeltelijk de filosofie. [ Bericht 8% gewijzigd door Trollface. op 08-07-2011 13:38:20 ] | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 13:28 | |||
Het is beter dan kippen aan haken hangen of kentekenplaten stansen. | ||||
thabit | vrijdag 8 juli 2011 @ 13:43 | |||
Python in combinatie met C werkt op zich wel lekker. Python voor het hogere programmeerwerk, C voor optimalisatie waar dat nodig is. Het enige wat daarbij nog mist is een goede ondersteuning voor parallellisatie. | ||||
kingmob | vrijdag 8 juli 2011 @ 13:44 | |||
Dat was ook ongeveer mijn gedachte destijds ![]() Ik kreeg gedurende die tijd wel de indruk dat de complexiteit van het werk enorm opgeblazen wordt. Het is wel een skill die op school moet worden geleerd denk ik. Ik voorzie dat in de toekomst iedereen iig een beetje moet kunnen programmeren. | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 13:46 | |||
Wat me wel opvalt is dat de meeste programmeurs hier niet verder dan hun eigen bordje kijken. | ||||
thabit | vrijdag 8 juli 2011 @ 13:56 | |||
Een bekend probleem in de programmeerwereld. De meeste programmeurs kennen maar 1 taal en zijn alleen maar op die ene taal gefocust. | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 14:00 | |||
Dat bedoel ik niet echt, ik bedoel dat ze niet verder kijken dan hun eigen programmeren, niet hoe dat in architectuur of design past, in teamwerk, ontwikkel, debugging en licentiekosten, etc etc. | ||||
thabit | vrijdag 8 juli 2011 @ 14:06 | |||
Het een hangt natuurlijk wel met het ander samen. | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 14:08 | |||
Correct | ||||
Daeron | vrijdag 8 juli 2011 @ 14:17 | |||
Ik denk dat dat ook afhankelijk is van de manager die boven de programmeur staat. Als die toestaat dat een programmeur vooral zijn eigen ding doet en totaal geen rekening houdt met zijn collega's heb je een slechte manager. Natuurlijk moet de programmeur er zelf ook zorg voor dragen dat zijn code onderhoudbaar blijft, maar het is ook verleidelijk om jezelf wat baanzekerheid te verschaffen door moeilijk begrijpbare code te bakken. Iemand die zoiets doet moet gewoon door zijn manager direct op de vingers getikt worden en na herhaling gewoon ontslaan. | ||||
Catbert | vrijdag 8 juli 2011 @ 14:25 | |||
Eerder in wat voor'n team iemand werkt. Bij ons hebben we ook het probleem gehad dat er weinig aan peer-reviewing gedaan werd, wat er toe geleid heeft dat we toen een bepaalde developer weg ging een tool maar opnieuw hebben gebouwd, from scratch. Leermomentje voor 't management hier. De manager zal natuurlijk nooit de code zien. | ||||
FoolWithMokey | vrijdag 8 juli 2011 @ 14:25 | |||
Hoe combineer je dan 2 talen met elkaar? Ik hoor hier mensen spreken over combinaties tussen twee talen maken. | ||||
Catbert | vrijdag 8 juli 2011 @ 14:27 | |||
Niet binnen een tool (tenzij je in een Java tool native dingen moet kunnen doen), maar veel grotere projecten heb je verschillende onderdelen die bijvoorbeeld via een SOA laag met elkaar praten. Dan maakt het geen hol uit als een service in Java en de frontend in C# gebouwd is. | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 14:37 | |||
Nee, als manager moet je er voor zorgen dat mensen gestructureerd willen werken binnen een team. Dat is lastig maar maakt de sfeer een stuk leuker en het team productiever. | ||||
Catbert | vrijdag 8 juli 2011 @ 15:01 | |||
Je kunt zelf ook je verantwoordelijkheid nemen en niet alles op je manager afschuiven. Als manager een ongemoteveerd struk vreten proberen te motiveren is ook vechten tegen de bierkaai natuurlijk. | ||||
Daeron | vrijdag 8 juli 2011 @ 15:26 | |||
Dan heeft het management dus de fout gemaakt door de mogelijkheid toe te staan dat zoiets kon gebeuren. ![]() Dat niet nee, maar hij moet er wel zorg voor dragen dat er iemand is die ervoor zorgt dat de code van iedereen voldoet aan de gestelde standaarden binnen het bedrijf. Dat kan de teamleider zijn of een aparte groep code reviewers. | ||||
Pietverdriet | vrijdag 8 juli 2011 @ 15:26 | |||
Natuurlijk Matennaaiers heb je overal, en die moet je verwijderen | ||||
Catbert | vrijdag 8 juli 2011 @ 15:35 | |||
Vandaar; leermomentje ![]() Helemaal mee eens. | ||||
SecurityException | vrijdag 8 juli 2011 @ 17:30 | |||
Ik snap niet hoe mensen kunnen afzweren bij rommeltaaltjes als PHP en Python. Ik heb er zelf weliswaar jarenlang mee gewerkt, maar wil toch echt alleen nog maar met talen werken die Strong Typed zijn en die fatsoenlijk een objectmodel ondersteunen. Ik werk tegenwoordig het meest in C# (en alle andere taaltjes, platformen en technieken die bij web developent komen kijken zoals Javascript/jQuery, CSS, enz.). PHP en Python zijn leuk als je een hobbyist bent en wat simpele apps voor jezelf schrijft, maar voor complexe projecten waar in teamverband aan gewerkt moet worden? Brrr... Uiteraard zou het in principe niet uit moeten maken welke taal je gebruikt (tenzij je echt heel diepgaand naar performance gaat kijken), zoals een user eerder in dit topic al mooi verwoordde. Maar toch, ik merk dat het aantal syntax/typefoutjes dat ik maak een stuk lager, en mijn ontwikkeltempo vele malen hoger ligt sinds ik alles netjes in C#.NET doe in Visual Studio, in tegenstelling tot mijn "open source" meuktijdperk. | ||||
keesjeislief | vrijdag 8 juli 2011 @ 18:06 | |||
Grappig. De algemene concensus is echter dat het ontwikkeltempo in Python een stuk hoger ligt dan in de talen die jij noemt. Jij bent blijkbaar een uitzondering. Misschien moet je voortaan je posts ook in een editor tikken om je voor 'foutjes' te behoeden, want 'afzweren bij' slaat nergens op hoor. ![]() | ||||
FoolWithMokey | vrijdag 8 juli 2011 @ 18:27 | |||
Hoeveel ervaring hebben mensen in dit topic met programmeren? Ik heb zelf net mijn P gehaald in Technische Informatica, maar had eigenlijk verwacht dat ik na een jaar wel wat meer kon. | ||||
SecurityException | vrijdag 8 juli 2011 @ 18:42 | |||
Ah wat lief, een taalpuristje. ![]() ![]() Dat vermeende hoge ontwikkeltempo dat je bij Python en PHP zou moeten hebben, ligt hem volgens veel fanatici in het feit dat er niks gecompileerd hoeft te worden en je derhalve snel wijzigingen kunt doorvoeren, zelfs op bijvoorbeeld een productieserver (ik zou dat zelf niet willen, overigens). Niet dat je er bij bijvoorbeeld C# niet voor kunt kiezen om de boel JIT te laten compileren, maar goed... Ik kijk als voorbeeld naar het maken van een behoorlijke applicatie. C# biedt veel meer elegante oplossingen om bijvoorbeeld veelgebruikte controls/combinaties van velden in een User Control te stoppen, is er veel beter op ingericht om aparte logica op aparte lagen te verwerken en is sowieso, vanwege het .NET framework dat er als het ware al in zit, al completer dan PHP. Het is absoluut een persoonlijke voorkeur, maar ik krijg toch veel liever een mooie solution in Visual Studio voor mijn kiezen waar zaken als een DAL en business objects in corresponderende bestandstypen verwerkt zijn, dan zo'n PHP 'applicatie' in Eclipse of Zend Studio waar je fijn in allerlei .php bestandjes mag gaan zoeken waar alles staat. Herbruikbare code schrijven, vooral voor gebruik in teamverband, is gewoon veel beter aangepakt in C#.NET in vergelijking met PHP. Vrij logisch dat dat direct invloed heeft op het uiteindelijke ontwikkeltempo. [ Bericht 0% gewijzigd door SecurityException op 08-07-2011 18:50:18 ] | ||||
Devv | vrijdag 8 juli 2011 @ 18:45 | |||
Ik heb ruim twee jaar relevante werkervaring met web- en desktopontwikkeling in .NET. Maar ik ben al ruim tien jaar hobbymatig aan het programmeren in uiteenlopende talen. Mijn ervaring is dat je toch het meeste leert door het gewoon te doen. | ||||
SecurityException | vrijdag 8 juli 2011 @ 18:47 | |||
Op mijn elfde (ruim 13 jaren geleden inmiddels) hobbymatig begonnen met PHP scriptjes in elkaar te frunniken. Nu een Zend certificaat, MCTS certificaat, 5 jaren professionele ervaring en veel kennis van en ervaring met andere programmeertalen rijker. ![]() | ||||
charon | vrijdag 8 juli 2011 @ 18:49 | |||
Als er verder nog iemand Forth spreekt.. | ||||
Catbert | vrijdag 8 juli 2011 @ 19:02 | |||
Zo'n 17 geleden begonnen met qbasic, later ook wat assembly en C geleerd maar dat vond ik nog best lastig. En op m'n 18e (13 jaar terug) met Java begonnen tijdens m'n studie. | ||||
Core2 | vrijdag 8 juli 2011 @ 19:09 | |||
Mooi dat hier 9 pagina's lang wordt gediscussieerd over een persoonlijke voorkeur ![]() | ||||
Trollface. | vrijdag 8 juli 2011 @ 19:14 | |||
Toch wel grappig dat je iemand voor taalpurist uitmaakt en dan zelf C# de hemel in begint te prijzen. | ||||
HenryHill | vrijdag 8 juli 2011 @ 19:28 | |||
Ooit begonnen met de Basic-talen: Basic op de Commodore 64, AMOS op de Amiga 500 en een klein beetje QBasic op de PC. Daarna een paar jaar 80386 assembly als voorkeurstaal gehad, eigenlijk voornamelijk vanwege de beperkte mogelijkheden van QBasic. Toen een hele tijd Java en C++ als favoriete talen gehad, totdat C#/.NET voorbij kwam. Sindsdien werk ik eigenlijk alleen nog maar in C#. Alhoewel Java eerder was, heeft Microsoft naar mijn idee met C#/.Net toch Java wel ingehaald als het gaat om expressieve kracht van de taal. En dat merk je op allerlei niveaus, van kleine dingetjes zoals de ondersteuning van properties, nullables of delegates, tot het toevoegen van een compleet nieuwe syntax (Linq) om collecties mee te filteren. En wat helemaal stoer is dat je (dankzij IQueryable) met hetzelfde gemak een database of xml-document kunt bewerken. En dan hebben we het nog niet eens gehad over alle mooie API's die hierom heen zitten, zoals WCF, Workflow 4 en het Entity Framework... | ||||
QBay | vrijdag 8 juli 2011 @ 19:30 | |||
Op mijn 17de begonnen aan HBO Informatica, nu 20 jaar en ga (in september) beginnen aan het vierde en laatste studiejaar. Voor de opleiding eigenlijk niet met programmeren bezig gehouden, behalve wat prutsen in PHP. Tijdens de opleiding gewerkt met Java en C#, sinds twee jaar heb ik een bijbaan als junior programmeur (10 uur per week) en werk ik vrijwel uitsluitend met HTML & CSS, JavaScript/jQuery en PHP. Het laatste studiejaar zal ik weer veel werken met C# (ASP.NET). | ||||
Devv | vrijdag 8 juli 2011 @ 19:32 | |||
Zijn hier ook nog mensen die met ponskaarten geprogrammeerd hebben? Zo ja, wat is je leeftijd? | ||||
#ANONIEM | vrijdag 8 juli 2011 @ 19:40 | |||
Ik denk zelf dat C++ een aardig goede taal is om echt desktop applicaties mee te maken. Daar vind ik Java minder geschikt voor. Maar goed als je een hele simpele desktop applicatie wilt maken: VB.Net. Erg simpele taal om te kennen. Vergeet trouwens ook niet met C++ dat je dan ook kan programmeren met DirectX of OpenGL. | ||||
Devv | vrijdag 8 juli 2011 @ 19:43 | |||
Het gaat erom wat de applicatie moet kunnen. Als de applicatie niet op een laag niveau met het besturingssysteem hoeft te praten, is .NET of JAVA net zo geschikt als C++. | ||||
QBay | vrijdag 8 juli 2011 @ 19:54 | |||
Met C# kan je ook prima DirectX of OpenGL gebruiken. Sterker nog, De Xbox 360 is geheel gebaseerd op C#, die draait alles op DirectX ![]() | ||||
Catbert | vrijdag 8 juli 2011 @ 20:24 | |||
Java ook ![]() | ||||
Devv | vrijdag 8 juli 2011 @ 20:25 | |||
Zelfs Delphi ![]() | ||||
QBay | vrijdag 8 juli 2011 @ 20:31 | |||
Dat wist ik dan weer niet, leuk dat het daar ook mee kan. | ||||
Farenji | vrijdag 8 juli 2011 @ 20:42 | |||
Je teamleden kunnen zomaar moorddadige psychopaten zijn die weten waar je huis woont dus het is altijd in je eigen belang om begrijpelijke, gestructureerde en onderhoudbare code te maken. Ook in perl. Mensen die denken dat dat niet kan in perl zijn gewoon incompetent en produceren voornamelijk geheimtaal om dat feit te verbergen. Als ik in een peer review onbegrijpelijke geheimcode tegenkom dan schop ik de maker onder zijn hol en mag ie het overdoen. Ooit komt namelijk de dag dat ik bugs moet fixen in die code of het moet aanpassen en dan wil ik niet meer moeite kwijt zijn dan strict noodzakelijk. Heb betere dingen te doen. Perl vind ik een van de meest expressieve talen die er zijn. Je kan er tiefuslelijk in vloeken maar ook hemeltergend mooie poezie in schrijven. En het is geschikt voor alles, van oneliners tot aan ubercomplexe applicaties. | ||||
FoolWithMokey | vrijdag 8 juli 2011 @ 20:48 | |||
- [ Bericht 100% gewijzigd door FoolWithMokey op 08-07-2011 20:48:45 ] | ||||
Fleischmeister | vrijdag 8 juli 2011 @ 22:35 | |||
Kijk wel even uit dat je geen framework (.NET) met een taal (PHP) gaat vergelijken ![]() ![]() Ik hoor regelmatig iets als "Ruby on Rails is echt veeel beter dan PHP!!!!1einz!!". Maar nog nooit van CakePHP gehoord hebben, wat zo ongeveer een Rails kloon is in PHP. (Ook dan is RoR nog beter imo, dat komt voornamelijk omdat het framework zwaar leunt op features in Ruby waar in PHP geen net equivalent voor is... intensieve metaprogramming e.d.) | ||||
henrivo | donderdag 14 juli 2011 @ 06:47 | |||
Okee jongens, tijd voor een stelling: In C(++) zit meer toekomst dan in Java (of een andere taal voor desktopapplicaties). Mee eens? Oneens? Onderbouwing zou leuk zijn ![]() De OP wordt vanmiddag volledig geupdate voor een eventueel vervolg en daarom wil ik bij deze vragen of er de behoefte is om hier een reeks van maken? ![]() | ||||
Pheno | donderdag 14 juli 2011 @ 07:33 | |||
Het wordt toch automatisch een reeks als je "open nieuw deel" doet als deze gesloten is ![]() | ||||
henrivo | donderdag 14 juli 2011 @ 08:05 | |||
Eh, zou kunnen ![]() ![]() | ||||
thabit | donderdag 14 juli 2011 @ 10:27 | |||
Oneens. C(++) is te low-level, wat het ontwikkelingsproces vertraagt. Computers hebben tegenwoordig genoeg capaciteit om voor minstens 95% van al het programmeerwerk niet meer van dat soort low-level talen afhankelijk te zijn. | ||||
Pietverdriet | donderdag 14 juli 2011 @ 10:31 | |||
Thabit zegt het idd vrij correct. Vanuit welke visie kijk je naar het programmeren en de taal. Puur vanuit een technische optiek, of vanuit ontwikkelkosten optiek, hoe goed je het werk door een team kan laten doen, de totale kosten, dus inclusief het debuggen, testen, etc. Hoe goed kan de code worden onderhouden, nieuwe versies gemaakt etc etc | ||||
HarryP | woensdag 5 oktober 2011 @ 00:25 | |||
Oneens. Nooit gedacht dat ik nog eens iets zou doen in Java als Microsoft fanboy (C#) maar ontwikkelen voor Android is in Java nu eenmaal het makkelijkste.
| ||||
Lod | woensdag 5 oktober 2011 @ 05:44 | |||
In combinatie met Android kun je nou niet bepaald zeggen dat Java het makkelijkst is. Je hebt immers geen keus. | ||||
raptorix | woensdag 5 oktober 2011 @ 15:43 | |||
Tjah toekomst kan ook zitten in niche branches, dat iets minder populair is wil niet zeggen dat er geen toekomst in zit. | ||||
HarryP | woensdag 5 oktober 2011 @ 23:09 | |||
Je kan ook voor native C kiezen voor je android ontwikkeling. Maar dat is inderdaad niet echt een zinnige keuze. | ||||
minibeer | woensdag 5 oktober 2011 @ 23:13 | |||
ik kan c# en een beetje java, maar ik heb leren programmeren in qbasic | ||||
drbarisart | woensdag 5 oktober 2011 @ 23:35 | |||
Waarom niet? | ||||
Daeron | donderdag 6 oktober 2011 @ 09:28 | |||
Ik denk dat de toekomst voor software ontwikkeling in Nederland uiteindelijk meer richting de architectuur zal gaan dan richting het daadwerkelijke codeer werk. Je ziet toch dat bedrijven steeds vaker een ontwikkelafdeling in de lage lonen landen hebben waar de ontwerpen heen gestuurd worden en waar dan (een deel van) de applicatie terug komt. | ||||
Catch22- | donderdag 6 oktober 2011 @ 09:30 | |||
dat neemt ook steeds verder af omdat 1. Het toch wel lastig communiceren is 2. Ze daar ook door hebben dat ze goedkoop zijn. Managers hebben de afgelopen jaren honderden procenten loonsverhoging gekregen 3. De kwaliteit vaak ondermaats is. | ||||
Daeron | donderdag 6 oktober 2011 @ 09:41 | |||
Volgens mij begrijp je het niet helemaal. Het gaat niet om het inhuren van een extern bedrijf en daar de software laten ontwikkelen, maar om een interne afdeling die in een ander land zit waar de software ontwikkeld wordt. Daardoor is de communicatie en de kwaliteit vaak van hoger niveau omdat het volgens de standaarden van het bedrijf gebeurt en de management lagen worden ook verminderd omdat het bedrijf daar zelf invloed op heeft. | ||||
SecurityException | donderdag 6 oktober 2011 @ 09:52 | |||
Intern of niet, in geval van communicatie met en afhankelijk zijn van een bedrijf in het buitenland blijf je toch zitten met tijdzone- en cultuurverschillen. Erg vervelend als een project zo tegen een deadline aan begint te lopen, en je kunt niet direct respons krijgen van je ontwikkelteam. Om nog maar te zwijgen over de kwaliteit, afgezien van het feit of het bedrijf in kwestie intern of extern is. Ik heb al genoeg Indiase broncode voorbij zien komen en doorgaans wordt ik er niet blij van; inconsistent, rommelig, slecht ingedeeld, debiele benaming van variabelen, geen documentatie / diagrammen, enzovoorts. Van die typische broncode waar één persoon zich volop gestort heeft, maar waar niemand anders ooit wijs uit zal komen. Goede broncode is begrijpbaar, leesbaar en schaalbaar. Ik ben van mening dat outsourcen/offshoren op lange termijn alleen maar meer kost, tenzij je eenmalig effe snel iets gemaakt moet hebben. Maar dan nog, huur ik liever een fanatieke student in dan een Indiër. | ||||
Catch22- | donderdag 6 oktober 2011 @ 09:55 | |||
dus dat dus | ||||
Catbert | donderdag 6 oktober 2011 @ 10:12 | |||
Neemt niet weg dat zowel afstand als taal grote barrieres kunnen zijn. Het is vele malen efficienter om gewoon op dezelfde locatie als een functioneel ontwerper te zitten zodat je even langs kan lopen met een "hoe had je dat bedoeld"-vraag. | ||||
Tijn | donderdag 6 oktober 2011 @ 10:19 | |||
Of er überhaupt toekomst zit in desktopapplicaties is een betere vraag. | ||||
Catch22- | donderdag 6 oktober 2011 @ 10:24 | |||
Als frontenddeveloper ben ik biased, maar ik denk het niet. | ||||
SecurityException | donderdag 6 oktober 2011 @ 10:30 | |||
Zeker wel. Door de komst van HTML5 gaat er veel veranderen aan presentatie, maar aan de programmatuur die er achter ligt zal niet veel veranderen. Sowieso, als je naar Windows 8 kijkt, ziet dat er heel anders uit, maar zodra je een programma opent zit je naar het schijnt gewoon nog in de 'ouwe', bekende interface te werken. | ||||
HostiMeister | donderdag 6 oktober 2011 @ 10:34 | |||
Nou begrijp ik de link tussen desktop applicatie en HTML5 niet helemaal. Zover ik weet heeft dat heel weinig met desktopapplicaties te maken. | ||||
Catch22- | donderdag 6 oktober 2011 @ 10:37 | |||
Het feit dat Google zoveel ziet in Chrome OS is natuurlijk wel een teken aan de wand. Ik zit het nut niet meer zo van native apps. Je kan in principe zo'n beetje alles in je browser doen en daarbij kan dat ook gewoon op zo'n beetje apparaten met alle reguliere besturingssystemen werken. | ||||
Catbert | donderdag 6 oktober 2011 @ 10:40 | |||
Je kunt webapplicaties (met alle voordelen daarvan) maken die alle voordelen van desktopapplicaties hebben. Met de trend naar cloud-based applicaties is het inderdaad maar de vraag over we over 10 jaar nog echt desktopapplicaties hebben. Ik snap ook niet dat hij HTML5 aandraagt en dan daarmee aan wil geven dat desktopapplicaties een toekomst hebben. | ||||
HostiMeister | donderdag 6 oktober 2011 @ 10:43 | |||
Desktopapplicaties zijn anders dan webapplicaties, de feel en de functionaliteit is anders. Maar om te zeggen dat alle desktopapplicaties vervangen worden door cloud based webapplicaties lijkt me geen aannemelijke trend (althans ik hoop dat het geen aannemelijke trend is ![]() | ||||
Catch22- | donderdag 6 oktober 2011 @ 10:44 | |||
Een goede webapplicatie kan soepeler werken dan desktopapplicaties... | ||||
SecurityException | donderdag 6 oktober 2011 @ 10:49 | |||
In Windows 8 gaat het straks mogelijk worden om e.e.a. in HTML5 te maken, denk aan plugins/add-ons. Nou blijft de achterliggende programmatuur natuurlijk hetzelfde, maar de wijze van presentatie zou daardoor erg veranderen. Veel mensen zien het als een WinForms-killer. | ||||
HostiMeister | donderdag 6 oktober 2011 @ 10:54 | |||
Dat is niets nieuws wat je daar zegt hoor, alleen om het dan een desktop applicatie te noemen... Oke, de grens is vaag, maar dan nog. | ||||
Tijn | donderdag 6 oktober 2011 @ 11:00 | |||
Er zit zeker een verschil tussen de look en feel van een desktopapplicatie t.o.v. een webapplicatie. Maar bedenk eens hoe groot dat verschil nu is en vergelijk dat met hoe groot dat verschil 5 jaar geleden was, 10 jaar geleden was, 15 jaar geleden was. Je ziet duidelijk een trend dat webapplicaties steeds beter bruikbaarder zijn voor het grote publiek. Als je die lijn doortrekt, is het helemaal geen rare voorspelling dat over 5 of 10 jaar webapplicaties zo goed zijn, dat er nog nauwelijks desktopapplicaties ontwikkeld worden. | ||||
Catch22- | donderdag 6 oktober 2011 @ 11:02 | |||
Het wordt tijd dat de "grote" jongens zich bij webapplicaties ook gaan bezighouden met async tools, usability etc. Zoals Google dat bijvoorbeeld doet. Ik zie Analytics nog niet echt zo goed werken als desktopapp | ||||
SpecialK | donderdag 6 oktober 2011 @ 11:04 | |||
Mensen die denken dat C# niet geschikt is voor het bouwen van webapplicaties hebben duidelijk een flink kennisgat om daar over te oordelen trouwens. | ||||
HostiMeister | donderdag 6 oktober 2011 @ 11:05 | |||
Helemaal mee eens hoor, daar niet van. Alleen ben ik zo'n dinosaurus die het zich nu nog niet in kan denken dat elk programma wat ik dagelijks gebruik web based wordt. Maar dan nog, als je indenkt hoe makkelijk het dan is om elke stukje software beschikbaar te stellen voor de hele wereld zonder noemenswaardige aanpassingen, waarom zou je dan nog willen ontwikkelen voor een specifieke desktopomgeving. Neemt niet weg dat ik het jammer zou vinden ![]() [ Bericht 0% gewijzigd door HostiMeister op 06-10-2011 11:16:40 ] | ||||
SecurityException | donderdag 6 oktober 2011 @ 11:13 | |||
Het is bovendien veel makkelijker om een webapplicatie te maken. Het ontwikkelen van een desktopapplicatie of een mobiele telefoonapplicatie kan een drama zijn wat betreft compatibiliteit. Alleen met het besturingssysteem zit je dan al te kloten. Een webapplicatie kan, als je het goed doet, onder alle omstandigheden werken, zelfs op een broodrooster met Internet bij wijze van spreken. ![]() En qua "look & feel" zijn de mogelijkheden/beperkingen tussen webapplicaties en desktopapplicaties nog maar miniem hoor. Het enige nadeel van een webapplicatie t.o.v. een desktopapplicatie is dat je nog altijd de beperkingen van het HTTP protocol hebt. Denk bijvoorbeeld aan het verwerken van gigantische bestanden (+8 GB), daar is een webapplicatie simpelweg niet geschikt voor. | ||||
Catch22- | donderdag 6 oktober 2011 @ 11:17 | |||
Dat klopt. Daarbij blijf je natuurlijk voor de backend _altijd_ afhankelijk van C(++/#), Java, PHP in welke vorm of framework dan ook. | ||||
SecurityException | donderdag 6 oktober 2011 @ 11:18 | |||
Dat zeker. ![]() | ||||
Tijn | donderdag 6 oktober 2011 @ 11:21 | |||
Websocket wordt ontwikkeld om veel van de beperkingen van HTTP weg te nemen. Het is nog een beetje pril, maar Firefox, Chrome, Opera en Safari bieden er al ondersteuning voor. Bandbreedte neemt toe, compressietechnieken worden beter. Geef het wat tijd en bestandsgrootte is steeds minder een beperking. | ||||
thabit | donderdag 6 oktober 2011 @ 11:28 | |||
Ik zou C# toch niet met C of C++ willen vergelijken. En eigenlijk ook liever niet C++ met C, want die ++ is pure taalverkrachting. | ||||
HostiMeister | donderdag 6 oktober 2011 @ 11:29 | |||
Welke mafkees werkt er dan nog met C. Dat is bijna net zo oldskool als in Assembly een webapp schrijven ![]() | ||||
thabit | donderdag 6 oktober 2011 @ 11:35 | |||
C is handig voor libraries die geoptimaliseerd moeten zijn. Ik zou er geen complete applicatie in schrijven. | ||||
Catbert | donderdag 6 oktober 2011 @ 13:57 | |||
Van ons product is alleen de 'core' C++, omdat dat gewoon retesnel moet zijn, de rest is allemaal Java. Gewoon omdat alle tools op alle door ons ondersteunde platformen moeten werken zonder dat er veel extra werk voor nodig is. Ik zie geen enkele reden om nog met C te werken boven C++ overigens. Ik vind in grote projecten OO wel een must, zelfs zo gekunsteld als in C++. | ||||
SecurityException | donderdag 6 oktober 2011 @ 14:37 | |||
Over snelheid gesproken, ik vind de mentaliteit van de gemiddelde programmeur tegenwoordig schrikbarend. Een script is langzaam? Dan kennen we toch gewoon meer capaciteit aan de virtuele server toe of zorgen we toch gewoon voor een betere processor? Een applicatie gebruikt nogal veel geheugen? Ach, dan plakken we d'r toch gewoon een reepje extra RAM in de server? Er gaat iets mis m.b.t. lees- en schrijfrechten? Geven we toch gewoon 'Iedereen' volledige rechten op een hele root map? Datasets verwijderen na gebruik? Dat doet de Garbage Collector wel hoor! Het lijkt af en toe wel alsof ik nog de enige ben die er een kunst van maakt om de boel te optimaliseren. Af en toe vind ik het optimaliseren zelfs leuker dan ontwikkelen. Een bedrijfje waar ik vaak over de vloer komt heeft een (erg brak geschreven) enquête tooltje, ik heb de programmeur daar al vaak aangesproken op dingetjes die hij toch echt beter aan kan passen in de broncode, maar dat doet hem niks. "Het loopt, nog nooit problemen gehad er mee.", zegt 'ie dan. ![]() ![]() Even helemaal afgezien van taal, want of ik nou een PHP projectje of een .NET solution voor m'n kiezen krijg, ik word er vaak niet goed van. Alhoewel dat in PHP sneller voorkomt omdat 't weak typed is (alles in stringvorm, bah). | ||||
thabit | donderdag 6 oktober 2011 @ 14:39 | |||
C is in principe ook objectgeoriënteerd. Je kunt namelijk methodes implementeren als functies die een pointer naar de struct als argument hebben. Virtuele methodes kun je als functiepointers in de struct implementeren. | ||||
SpecialK | donderdag 6 oktober 2011 @ 14:44 | |||
Ik had idd quote er bij moeten zetten.
| ||||
Hi_flyer | donderdag 6 oktober 2011 @ 14:46 | |||
Nog nooit heeft iemand mij OO op een goede manier weten uit te leggen... Wie durft? | ||||
thabit | donderdag 6 oktober 2011 @ 14:51 | |||
Ik zou zeggen: ga er eens actief mee aan de slag; dat werkt een stuk beter dan een boekje lezen (misschien wel handig om in elk geval een boekje ernaast te houden). | ||||
Pietverdriet | donderdag 6 oktober 2011 @ 14:55 | |||
Dat dus Ga eens lekker een week of wat bezig met Java, is niet echt moeilijk en je begrijpt daarna veel over (OO) programmeren | ||||
Catch22- | donderdag 6 oktober 2011 @ 14:56 | |||
of C# icm .Net, is wat makkelijker te snappen. | ||||
SecurityException | donderdag 6 oktober 2011 @ 15:01 | |||
![]() ![]() OOP brengt (mits je het goed doet) veel meer logica, gelaagdheid, overzicht en schaalbaarheid in je broncode. Je kunt dan logische, aanspreekbare objecten aanmaken. Vooral in combinatie met een Strong Typed taal werkt het heerlijk. [ Bericht 0% gewijzigd door SecurityException op 06-10-2011 15:06:28 ] | ||||
Catbert | donderdag 6 oktober 2011 @ 15:54 | |||
Gelukkig hebben wij hier geen 'gemiddelde' programmeurs. Je moet het 'waarom' wel snappen natuurlijk, anders ga je in een OO taal alsnog dezelfde fouten maken. Java maakt het je moeilijker om niet-OO te programmeren maar zeker niet onmogelijk. Wie durft? Godver man, zelfs de wikipedia pagina legt het prima uit. Wees niet zo'n luie zak en zoek 't lekker zelf uit ![]() | ||||
Devv | donderdag 6 oktober 2011 @ 16:25 | |||
Dan heb je zeker nog nooit een fulltrust WPF browser applicatie gezien? Die is niet van een desktop applicatie te onderscheiden; behalve dan dat het in een browser venster zit. | ||||
raptorix | donderdag 6 oktober 2011 @ 16:52 | |||
IDD, ik vind dit 1 van de best geschreven C# boeken die er is voor beginners: http://www.robmiles.com/c-yellow-book/ Nog gratis ook. | ||||
minibeer | donderdag 6 oktober 2011 @ 18:04 | |||
Functioneel programeren anyone? Ik heb het nu als vak, tentamen heulemaal verneukt. ![]() | ||||
thabit | donderdag 6 oktober 2011 @ 18:37 | |||
Functioneel programmeren is ontzettend mooi, alleen heeft het weinig zin om serieus met talen aan de slag te gaan die (mogelijk onterecht) bijna niemand kan. | ||||
minibeer | donderdag 6 oktober 2011 @ 18:44 | |||
Ach, je kan er altijd dll's mee schrijven en die gebruiken in een andere programmeertaal. | ||||
Farenji | donderdag 6 oktober 2011 @ 19:37 | |||
In o.a. Javascript en Perl kun je prima functioneel programmeren. | ||||
Core2 | vrijdag 7 oktober 2011 @ 09:49 | |||
Komt niet in de buurt van haskell/clean. | ||||
raptorix | vrijdag 7 oktober 2011 @ 10:12 | |||
http://zotonic.com/ CMS gebaseerd op de functionele taal Erlang, nooit mee gewerkt, maar 2 kennissen zitten in het dev team daar. | ||||
themole | vrijdag 7 oktober 2011 @ 10:15 | |||
Welke taal moet je leren? Heb ooit scala bekeken en op zich is het wel een fijne funcitonele programmeertaal. Hoewel hij ook OO is. ![]() | ||||
SecurityException | vrijdag 7 oktober 2011 @ 10:20 | |||
Erlang? Ziet er wel leuk uit, maar ik vermijd zulke systemen en onbekende, niet-populaire talen als de pest. Allemaal leuk en aardig voor de hobbyist die nachtenlang programmerend in de kelder doorbrengt, maar feitelijk en carière-technisch heb je er geen ruk aan om je in zoiets te verdiepen. Ik ben zo bijvoorbeeld ook erg negatief ten opzichte van Ruby on Rails. Het zal ongetwijfeld prettig en als een tierelier werken, maar wat héb je er in hemelsnaam aan om je daar in te verdiepen als je al én met .NET én met PHP werkt? Het is toch je reinste tijdverspilling om je in die fase nog in RoR te gaan verdiepen? Tenzij RoR natuurlijk groot wordt en het vacature- en projectaanbod naar rendabele proporties groeit. Ik vind het al erg genoeg dat de PHP markt zo 'verziekt' is geworden door het enorme grote aanbod aan CMS platformen en frameworks. Dat is eigenlijk voor mij reden geweest om van PHP naar .NET over te stappen. | ||||
Catbert | vrijdag 7 oktober 2011 @ 10:47 | |||
Ik vind het daarnaast ook een enorm bedrijfsrisico om je CMS in iets dergelijks te bouwen. Stel het wordt een groot succes, dan heb je er op eens 5 Eerlang programmeurs bij nodig. Nou, succes! | ||||
SecurityException | vrijdag 7 oktober 2011 @ 10:55 | |||
Zo was ik laatst nog bij een bedrijf over de vloer dat een heel CMS in Python had geschreven. Leuk hoor, maar waaróm in hemelsnaam? Je maakt het jezelf moeilijk. Als je voor PHP of .NET kiest heb je een gigantische userbase, terabytes aan documentatie, een heel scala aan libraries en het wordt bijna overal ondersteund. | ||||
Farenji | vrijdag 7 oktober 2011 @ 11:00 | |||
Dat heb ik ook niet gezegd, het zijn totaal verschillende talen. Maar je kan wel functioneel programmeren met veel procedurele talen; daar is niet zo veel voor nodig. Je moet functies kunnen maken die andere functies als returnvalue kunnen teruggeven, incl closure; dan ben je er eigenlijk al want dat is de basis. Volgens mij kan dat tegenwoordig met php ook al. | ||||
thabit | vrijdag 7 oktober 2011 @ 11:07 | |||
Dan heb je functionele elementen in je taal zitten, maar van volwaardig functioneel programmeren zou ik dan nog niet willen spreken. | ||||
Catbert | vrijdag 7 oktober 2011 @ 11:08 | |||
Python vind ik nog wat anders, dat is echt simpel te leren als je al PHP of Java ofzo kent. Maar een functionele taal is gewoon een andere 'denkwijze' en iets waar ik zelf geen zin in zou hebben. Voor een beetje hobbyen okay, maar niet voor m'n dagelijkse werk. gelukkig programmeer is zelf niet veel meer maar ik doe eigenlijk alles gewoon in Java. Af en toe moet ik puur een stuk tekst masseren en dan gebruik ik met plezier Python. M.i. meer leesbaar dan Perl. Tja. Je kunt met een schroevendraaier ook een spijker in een stuk hout slaan... | ||||
Lod | vrijdag 7 oktober 2011 @ 11:23 | |||
Heeft iemand nog wat links voor functioneel programmeren for dummies? Klinkt wel interessant namelijk. | ||||
Core2 | vrijdag 7 oktober 2011 @ 11:27 | |||
Check deze serie van Erik Meijer, briljante gast: http://channel9.msdn.com/(...)damentals-Chapter-1/ | ||||
Litpho | vrijdag 7 oktober 2011 @ 11:39 | |||
Ruby on Rails werkt als een tierelier ![]() Dat gezegd hebbende, ik zou RoR er ook niet even bij doen. Dat is echt een bewuste keuze die je moet maken en, evenals bijv. J2EE, iets waarbij het lastiger is om je hosting te regelen voor met name particulieren/kleine bedrijfjes dan een standaard WAMP/LAMP oplossing. | ||||
Afwazig | vrijdag 7 oktober 2011 @ 11:45 | |||
Cisco ![]() | ||||
Catbert | vrijdag 7 oktober 2011 @ 12:05 | |||
Het moet je liggen. Ik vind dat netwerkgeneuzel geestdodend saai. Zit geen enkele creativiteit in. | ||||
raptorix | vrijdag 7 oktober 2011 @ 12:07 | |||
Oh mee eens hoor, ik werk zelf vrijwel exclusief met Umbraco en Episerver, ik heb presentatie gezien van gast die Zotonic heeft geschreven, en het is puur met de filosofie van snelheid en schaalbaarheid geschreven, en daar zijn ook de technieken op gebaseerd, niet omdat het zo lekker programmeert ![]() | ||||
raptorix | vrijdag 7 oktober 2011 @ 12:08 | |||
Ik heb 1 dag Ruby geprobeerd, bij het scaffolden ging het al fout, hoewel het boek slechts 2 maanden oud was, bleek de syntax al niet meer te kloppen, en natuurlijk was het niet backwards compatible ![]() ![]() ![]() | ||||
Catbert | vrijdag 7 oktober 2011 @ 12:13 | |||
Zit je met je dure boek ![]() Ik vind het RoR verhaal an sich best wat hebben, ben er zelf ook mee bezig geweest, maar ik vind het wat ondoorzichtig. Ik heb er nog geen beeld bij hoe de balans ligt tussen het helpen een webapp op te zetten en je in een bepaald stramien drukken. Maar dat is van mijn kant ook gewoon een gebrek aan ervaring met RoR. |