Mikä olisi hyvä kieli joka kannattaa opetella jos haluan työllistyä suurempien (yli 20 hengen) projektien parissa? Millä ympäristöillä niitä tehdään? Sopiiko Delphi?
Hyvä ohjelmointikieli ryhmätyöprojekteihin
Acutiator -94
16370
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 16
Vanhimmat
Java. Se on juurikin tälläisiin suunnattu ylivoimaisesti käytetyin tässä sarjassa. Kieli suunnilleen pakottaa oliomalliin, tiettyyin koodaustyyliin, dokumentointiin yms. että ohjelmointiporukan huonommatkin ohjelmoijat pysyy edes jotenkin ruodussa.
Delphin käyttämä Object Pascal sitten on katoavaa kansanperinnettä.
Onko Object Pascal läheistä sukua Objective C:lle? Nimen mukaan olisi.
Onko Objective C:stä tai Web Objecteista mihinkään? Ilmeisesti suosittuja Applen laitteissa.
Objective C:llä ja Object Pascalilla ei ole paljoakaan tekemistä keskenään. Objective C on aika turha kun sitä ei käytä kukaan muu kuin Apple eikä se ole standardoitu kieli, tosin kuin C joka on paras oliokieli kun halutaan suorituskykyä. Parhaimmillaan desktop sovelluksissa, peleissä ja usein myös mobiilisovelluksissa.
Aika moni väitti esim vuonna 1994 että Pascal on kuollut kieli.
Pascal ja sen jälkeen tullut C kielikin elää vielä pitkään.
Pascal on jo kuollut. Käytännössä kaikki käyttänyt Turbo Pascalin laajennoksia kun standardi Pascal ei tainnut taipua edes useaan sorsatiedostoon. Turbo Pascalin pohjalta sitten on tullut Delphi ja tämän Object Pascal. Delphi oli aikoinaan pätevä mutta tämän alamäki alkoi käytännössä siitä kun Java ilmestyi kuvioihin.
Borlandilla alkoi mennä huonosti, Delphin julkaisujen laatu vaihteli, koodi on melkoisen naimisissa sen IDE:n kanssa ja huonosti porttautuva, suljettuna yhden firman tuotteen ollessa kyseessä tulevaisuus erittäin epävarma ja kehittäjäpako valtava. Delphi alkaa olla melkoisen kuollut. Delphi 2:n aikaa se oli huipussaan kilpaillessaan Visual Basicin kanssa mutta viimeinen versio millä oli mitään oleellista merkitystä oli Delphi 7, joskus 8v takaperin. Sitä versiota käyttää edelleenkin monet Delphisissit.
Vaikka unohtaisi sen, että Delphin uudemmat versiot ovat vaihtelevia laadultaan ja sen, että se on typerästi rajoittunut Windowsiin niin se on jatkuvasti pari askelta jäljessä .NET alustassa, Visual Studiosta on ilmaisversioitakin, ei tue VIELÄKÄÄN 64-bittisyyttä yms. Aika marginaalinen alkaa olla.
C kieli elää kyllä pitkään. Syynä on se, että se vahvasti naimisissa unixin kanssa josta tullut standardi käyttöjärjestelmäarkkitehtuuri ja C kielisiä kirjastoja voidaan kutsua melkeinpä mistä tahansa. C kieli tulee elämään hyvin pitkään koska se on defacto kieli systeemiohjelmoinnissa ja kielen syntaksista on tullut ohjelmointikielten lingua franca.
Väittäisin että tietämyksesi Pascal:sta on erittäin vajavainen.
Ihmettelen mistä oikein olet ammentanut kirjoittamasi tiedon?
Jos vertaat käsitystäsi esim. englantilaisten antamaan
http://web.aqa.org.uk/qual/gce/pdf/WITHDRAWAL_OF_COMP1.PDF
Tämän tekstin lukemisen jälkeen olet tietoinen että on myös
http://www.freepascal.org/
ja http://www.lazarus.freepascal.org/
Kokeile nyt vaikkapa Lazarusta että saat ihan kantapään kautta kokemusta
siitä. Vaikka vain tunnin ajan.
Kun luet nämä pari vertausta niin ehkäpä ymmärrät enemmän:
Muista että joku valtakieltä kuten esim kiinaa puhuva voi väittää että
suomen kieli
on kuollut eikä sitä käytetä enään missään. Lisäksi he voivat perustella
sitä sillä että lähes kaikki suomalaiset osaavat
jotain muutakin kieltä.
Olen minä joskus 15v takaperin Pascaliakin kirjoittanut epästandardin Object Pascalin muodossa mutta kyllä se aika ankea on. Itse en pitänyt siitä, että se oli kankeampi kirjoittaa kuin vaikka C ja kritiikkiä se on saanut jo kauan sitten: http://en.wikipedia.org/wiki/Pascal_(programming_language)#Criticism
Kyllä ne Pascalin fanittajat vaikuttaa olevan näitä jotka on aikoinaan tykästyneet Delphiin ja jumiutuneet siihen. En ihmettelisi jos Pascalin osaajat hallitsisivat ja tuntisivat keskimääräistä huonommin eri ohjelmointikieliä.
Epästandardeilla kielillä tehdään hyvin paljon asioita. Kaiken lisäksi niitä tehdään todella hyvin.
XBoxin ohjelmointikielenä hyvä on C# ja XNA on todella hyvä ympäristö.
IPhonelle hyvä kieli on Objective-C ja framaworkkina Cocoa. Tosin tiesitkö, että iPhonea voi ohjelmoida ihan hyvin tekemällä 98% sovelluskoodista puhtaalla C:llä ja vain pari rajapintaa Objective-C:llä?
Windowsille työasemasoftia tehden .NET on erittäin hyvä valinta jos teet vain Windowsille.
Symbianin kanssa ohjelmoitaessa kielenä oli joku C++:n tapainen, mutta kuitenkin oma epästandardi sotkunsa joka oli valitettavasti paras vaihtoehto.
Pascalista en tiedä missä se olisi paras vaihtoehto.
"XBoxin ohjelmointikielenä hyvä on C# ja XNA on todella hyvä ympäristö."
C# on kylläkin standardoitu kieli. XNA ja .NET on sitten sellaista mihin ei ole turvallista tehdä riippuvuuksia.
"IPhonelle hyvä kieli on Objective-C ja framaworkkina Cocoa. Tosin tiesitkö, että iPhonea voi ohjelmoida ihan hyvin tekemällä 98% sovelluskoodista puhtaalla C:llä ja vain pari rajapintaa Objective-C:llä?"
Tiedän. Objective-C sitten ei ole standardoitu, joten siihen ei ole järkevää tehdä riippuvuuksia.
"Windowsille työasemasoftia tehden .NET on erittäin hyvä valinta jos teet vain Windowsille."
Työasemasoftien tekeminen vain Windowsille on nykypäivänä hyvin tyhmää. Windowsien häviäminen työasemissa kiihtyy 2-4v aikavälillä nykyisestä selvästi, ja tunnetusti ohjelmistojen elinikä voi olla helposti kymmeniä vuosia joten ohjelmoijien pitää aina katsoa vähän matkaa tulevaisuuteen. Softasta riippuen kannattaa tehdä joko C++:lla tai Javalla. Molemmilla on etunsa. Java on itseasiassa fiksumpi vaihtoehto mitä lyhytnäköisemmät tajuavat koska tulevaisuudessa ei pirstoudu ainoastaan käyttöjärjestelmämarkkinat mutta myös arkkitehtuurit. Nykyään on paljon x86:sta mutta tulevaisuudessa arkkitehtuurien määrä tulee kasvamaan. Jopa yritysten sisäiset ympäristöt pirstoutuvat kun nykypäivänä työntekijät kasvavissa määrin käyttää omia koneitaan ja ohjelmistojaan koska se parantaa tuottavuutta.
"Pascalista en tiedä missä se olisi paras vaihtoehto."
Ei missään.
No jos XBoxille teet pelin, niin aika turhaa on yrittää tehdä sitä muutoin kuin XNA:n päälle. Se on eri asia, kannattaako pelejä tehdä ollenkaan tai tuolle laitteelle. Onko sinulla parempaa ajatusta XBox-ohjelmointiin tutustumiselle kuin XNA Game Studio ja C#? Ihan mielenkiinnosta kyselen.
Ennen noita pelejä on tehty C :lla, mutta olisi todella kiinnostavaa tietää miten C#:n ja C :n kanssa toimitaan käytännössä monen alustan kehittelyssä. Joku Alan Wake on tehty vain XBoxille ja sen julkaisija on Microsoft, joteb voisi olettaa, että sen kanssa XNA ja C# olisivat hyvä valinta koska MS ei halua omia yksinoikeuksiaan muille konsoleille.
Oletko koodannut iPhonella? Todella jännä systeemi. Objective-C:n kanssa olisi varmasti muutama asia joissa sille tehden saisi etua ja parin rutiinin tekeminen sillä ei estä lopun tekemistä C:llä. Mitä mieltä olet Cocos 2D-kirjastosta joka on C:tä ja mahdollistanut aika hienojakin pelejä.
Työasemasoftan tekeminen Windowsille voi olla tosiaankin tyhmää, mutta sanoinkin, että JOS tekee vain sille, niin .NET on ihan ok. Totta puhuen jos Qt Creatorin saisi toimimaan C#:n kanssa ja hyvin eri alustoilla, olisin ehkä myyty.
Pascalissa on yksi asia missä se on useimmiten paras. Keksin juuri. Vanhojen softien korjauksissa, jotka on tehty Pascalilla. Niin, ja historiaan tutustumisessa jos haluna on nähdä mitä tekeminen on ollut Adalla, Cobolilla, Pascalilla ja vastaavilla.
Tuo kritiikki oli omana aikanaan kirjoitettu. Se ei todellakaan tarkoita
että tilanne olisi nykyään sama.
Se että 70-luvun Volvossa ei ollut lukkiutumattomia jarruja kun taas tämän
päivän Kiassa sellainen on. Ei tarkoittane sitä että
tämän päivän Volvossa niitä ei löytyne. Vaikkei siinä 70 -luvun Volvossa
ole lukkiutumattomia jarruja niin sillä voi
ajella tänä päivänäkin.
Kuinka paljon olet tutkinut tämänhetkisiä Pascal-toteutuksia (Milloin
julkaistua versiota)?
Esim. tuossa englantilasten pdf:ssä (
http://web.aqa.org.uk/qual/gce/pdf/WITHDRAWAL_OF_COMP1.PDF ) mainittiin se
mm yhä maailman parhaana RAD-kielenä.
Pascalin viimeisin versio on vuodelta 1992. Mitään ihmeen "RAD-kieltä" ei ole olemassakaan. Sekoitat nyt ohjelmointikielet ohjelmointiympäristöihin. Kaikki muutokset Pascaliin mitkä ei standardiin kuulu, eivät ole Pascalia vaan jotain epävirallisia laajennoksia tai kyseessä voi olla jopa täysin eri kieli, kuten Object Pascal. Silläkään ei tee yhtään mitään kun pitäis olla sitten naimisissa sen työkalun kanssa ja joku Delphi esimerkiksi on naimisissa Windowsin kanssa mikä tekee siitä nykypäivänä huonon vaihtoehdon.
Artikkelissa minkä mainitsit puhuttiin ohjelmointikielissä opetuskäytössä ja siellä mainittiin myös Python, mikä sopii siihen hommaan paljon paremmin.
On totta että Delphillä voi tehdä hyvin windows riippuvaista koodia mutta se ei tarkoita sitä että näin tarvitsisi tehdä.
Antamasi mielikuvan mukaan Pascal koodi ei ole siirrettäävää mutta jos katsoo esimerkiksi näitä sivuja
http://www.fast-report.com/en/products/fast-script.html
http://www.elevatesoft.com/products?type=delphibcb
niin niistä saa sen käsityksen haluttaessa Pascal koodista saa siirrettävää eri merkkisiin Pascal kehitysvälineisiin (ja eri käyttöympäristöihin).
Kirjoitit:
"Silläkään ei tee yhtään mitään kun pitäis olla sitten naimisissa sen työkalun kanssa"
Milloin olet testannut siirrettävyyttä esim. tässä tapauksessa
Lazaruksen ja Delphin välillä. Eli mihin kirjoittamasi arvio perustuu?
Jos luet vaikkapa Delphi keskustelualueella
http://keskustelu.suomi24.fi/debate/4326
olevia tekstejä voitko sanoa mitkä niistä eivät toimi esim. Lazaruksella Linuxissa?
Täällä joku antoi ymmärtää että Pascal koodin tuottaminen on kankeaa.
Onkohan asia todellakaan noin. Syynä enemmäkin voi olla se että
käyttäjän käyttämä kehitysympäristö on vajavainen tai todennäköisemmin käyttäjä ei osaa hyödyntää / käyttää kehitysympäristöä.
Vertaa jossain toisessa viestissä mainittuun maailman parhaaseen RAD-työkaluun. Aika ristiriidassa ovat väitteet!
Vihjeeksi että jos ei osaa käyttää voi kysyä neuvoa.
Täällä on taas delphi/pascal flametus menossa. Delphi on edelleenkin windows ympäristössä hyvä vaihtoehto. Kääntäjä on tehokas ja sillä voidaan tehdä itsenäisesti toimivia sovelluksia helposti. Ei siis olla riippuvaisia mistään frameworkeista ja niiden versioista vaan kaikki tarvittava löytyy exestä. Ja sitäkään en ymmärrä mikä pakkomielle alustariippumattomuus joillekin on. Se että joku kehitystyökalu on sidottu alustaan tekee siitä automaattisesti paskaa ja kuollutta historiaa?? :D