Gå till innehåll
Just nu i M3-nätverket

Vilket språk ska jag börja med?


Samsalabim

Rekommendera Poster

Om du med övriga ramverk menar till exempel Cocoa så stämmer inte det. Xcode är i mångt och mycket ett fint skal ovanpå GCC. Du kan till och med se i Xcodes byggresultat precis vilka kommandon som utförs under kompilering och länkning.

 

Tänkte mig mer hur man använder Xcode samt InterfaceBuilder för att koppla GUI till kod, givetvis kan du göra detta helt i ren kod också men det går ju lite fortare att jobba med InterfaceBuilder iaf för mig

Länk till kommentar
Dela på andra webbplatser

Tänkte mig mer hur man använder Xcode samt InterfaceBuilder för att koppla GUI till kod, givetvis kan du göra detta helt i ren kod också men det går ju lite fortare att jobba med InterfaceBuilder iaf för mig

 

Interface Builder har lite integration med Xcode på sätt och vis, ja.

Men Xcode är absolut inget krav för Cocoa eller annan utveckling. Metrowerks Codewarrior integrerade sig med Interface Builder precis som Xcode gör. Interface Builder har annars inget med Xcode att göra.

Länk till kommentar
Dela på andra webbplatser

Jag har tidigare jobbat lite med Visual basic.net och Java i skolan, men bestämmde mig för ett tag sen att försöka lära mig iPhone Application Programming när jag läste att en kurs med samma namn skulle läras ut på Stanford University och publiceras gratis på iTunes U.

 

Givetvis är det ingen nybörjarkurs, utan kräver kunskaper bla. motsvarande en annan stanfordkurs som heter CS106B. Denna i sin tur kräver CS106A, båda dessa ligger dock också ute på iTunes U. Jag har nu i några månader tragglat mig igenom många timmar video och uppgifter, men har lärt mig massor. Idag började jag titta på iPhone-kursen, och hängde hyggligt med i svängarna.

 

CS106A är en introkurs till programmering där de använder Java. CS106B är en fortsättning där man använder sig av C++. Det är dock inget fokus på att lära sig språken, utan mer att lära sig programmera och lära sig tänka som en programmerare. Java och C++ blir då verktyg i processen.

 

Dessa två kursen rekommenderas! Speciellt läraren för CS106A är ohyggligt bra och ger en suberb introduktion till programmering. Rekommenderas för alla nybörjare. Och det är gratis!

Länk till kommentar
Dela på andra webbplatser

jag stod inför samma fundering för ett par månader sedan. jag bryr mig inte om iphoneutveckling fn bara utveckling på osx. det blev att hugga in i objective-c. därefter cocoa. jag har flera år med java och c# bakom mig och det gjorde det mkt lättare men inte var det direkt lätt. tänket är samma. det är annan syntax och lite olika egenheter men inte mer än att som erfaren programmerare tar man sig igenom rätt bra. tror absolut inte på det är svårare än något annat för en nybörjare. finns mkt bra läromedel.

 

jag tycker xcode och interface builder står sig rätt bra mot hur produktiv jag är känner mig i vs2008 eller IntelliJ. IntelliJ på osx har jag inte provat än men personligen ser jag inte mig själv skriva nån java för osx. än...

 

ren c tycker jag man kan hoppa över för osx utveckling. lika så c++. c har annat tänk som tex steve kochan påpekar. MEN med reservation för att just i det fall man tänkt utveckla för iphone är c säkert riktigt bra (för att inte säga ett måste). säger det sig inte själv att programmerar man mot mobiltelefoni är det rätt nära hårdvaran och mkt begränsade resurser och där gör sig scriptprogrammerare och högnivåspråk inte besvär.

 

det låter lite som ett sisyfos-projekt att lära sig programmera och det första man gör är att ge sig på iphone... men good luck :)

Länk till kommentar
Dela på andra webbplatser

  • 4 months later...
Ingemar Ragnemalm
Ursäkta, inte en chans att Objective C är enklare att lära än andra c-språk. Xcode gär det hela mycket svårare.

Faktum är att det är extremt bökigt och är en mycket hög tröskel innan man fattar hur de tänker.

Helt riktigt, för ObjC är en enda röra där man blandar C och Smalltalk, där de två inte förenas till något bra utan det blir bara stökigare, i mitt tycke ungefär som att blanda mjölk och läsk. Det blir fler koncept att hålla reda på, både funktionsanrop och meddelanden.

 

Cocoa är så klart i viss mån en annan sak, det är ett helt vanligt ramverk, och som alla sådana är det jobbigt att lära sig. Detta medger Hillgass öppet i sin bok.

 

Och Xcode är i sin tur en IDE bland många, och precis som Visual Studio är den rätt komplicerad och rörig.

 

Det finns många språk att börja med, och det finns olika ramverk och olika IDEer. Vilken kombination man väljer beror på ens behov. Men om man låser sig på det första man hittar så är chansen liten att hitta det som verkligen passar en. Jag har testat mycket och bytt många gånger.

 

"det låter lite som ett sisyfos-projekt att lära sig programmera", japp, och det är på grund av att man krånglat till det något otroligt. De lätta och behagliga vägarna är nästan bortglömda, och därmed blir det färre som programmerar för att det är roligt. Men det kan vara väldigt roligt!

Länk till kommentar
Dela på andra webbplatser

Helt riktigt, för ObjC är en enda röra där man blandar C och Smalltalk, där de två inte förenas till något bra utan det blir bara stökigare, i mitt tycke ungefär som att blanda mjölk och läsk. Det blir fler koncept att hålla reda på, både funktionsanrop och meddelanden.

 

Cocoa är så klart i viss mån en annan sak, det är ett helt vanligt ramverk, och som alla sådana är det jobbigt att lära sig. Detta medger Hillgass öppet i sin bok.

 

Och Xcode är i sin tur en IDE bland många, och precis som Visual Studio är den rätt komplicerad och rörig.

 

Det finns många språk att börja med, och det finns olika ramverk och olika IDEer. Vilken kombination man väljer beror på ens behov. Men om man låser sig på det första man hittar så är chansen liten att hitta det som verkligen passar en. Jag har testat mycket och bytt många gånger.

 

"det låter lite som ett sisyfos-projekt att lära sig programmera", japp, och det är på grund av att man krånglat till det något otroligt. De lätta och behagliga vägarna är nästan bortglömda, och därmed blir det färre som programmerar för att det är roligt. Men det kan vara väldigt roligt!

 

Hur kan du tycka att Objective-C är en röra, det är fruktansvärt rent, har inte en massa onödiga finesser (som C++).

Tycker faktiskt Objective-C nästan automatiskt gör att koden dessutom blir välskriven.

 

Men visst det är smalltalk så det smäller om det, men jag ser inte riktigt problemet när 99% av alla andra "objekt orienterade språk" rakt av kopierat Simula istället.

Vill man vara unik får man köra Forth eller Haskell osv men då har du en lärningskurva som heter duga istället.

Länk till kommentar
Dela på andra webbplatser

Usel hemsida. Det finns ju knappt något där, snarare känns det som en god tanke om att göra en hjälpsam site men där man snabbt tröttnade på att lägga till innehåll.

Ännu viktigare: varför i hela friden skulle någon vilja utveckla Microsoft program för Mac???

Är man seriös med att börja programmera för Mac så är Objective C ett snudd när självklart val, även om det skulle funka med C++ och Java också.

Länk till kommentar
Dela på andra webbplatser

Svejs,

Här kommer mina blåbärstips: Stanfords kurs som blev otroligt populär på iTunes U kommer med största sannolikhet att köras nu i vinter igen och läggas ut på iTunes, men uppdaterad till OS3:

http://www.stanford.edu/class/cs193p/cgi-bin/drupal/node/7

 

Här är en gratis introkurs som jag just har skrivit ut och tänkte följa, kräver inga förkunskaper alls inom programmering (annars är det ett vanligt problem, böckerna brukar börja med "du måste ha kunskaper i C, C++) :

 

(PDF) http://www.cocoalab.com/BecomeAnXcoder.pdf

 

Sedan kommer det ett par lovande nybörjarböcker i början av nästa år som kan vara värda att hålla utkik efter, sök på Amazon.

Länk till kommentar
Dela på andra webbplatser

Ursäkta, inte en chans att Objective C är enklare att lära än andra c-språk. Xcode gär det hela mycket svårare.

Faktum är att det är extremt bökigt och är en mycket hög tröskel innan man fattar hur de tänker.

 

Har man tagit sig över tröskeln är det säkert superbra.

 

Vad gäller xcode så är det som att gå tillbaks till stenåldern jämfört med visual studio på windows...

det är många gånger lättare än skitspråket C++ (många som håller med om det, ta tex Linus Torvalds) och det är enklare att sätta igång och koda med än C om du vill se resultat snabbt (C är riktigt kul men inget för nybörjare eftersom det är ett lågnivåspråk)

Länk till kommentar
Dela på andra webbplatser

det är många gånger lättare än skitspråket C++ (många som håller med om det, ta tex Linus Torvalds) och det är enklare att sätta igång och koda med än C om du vill se resultat snabbt (C är riktigt kul men inget för nybörjare eftersom det är ett lågnivåspråk)

 

Jag tror det beror på att många blandar ihop Objective-C med Cocoa.

Jag kan för hela min värld inte se hur "hur dom tänker" kan vara svårt med Objective-C, förutom att method anrop görs via meddelanden [objekt methodnamn: argument] istället för object.methodnamn(argument) eller object->methodnamn(argument); ; Vad är det att förstå hur "dom tänker"?

 

Cocoa däremot är lite annorlunda jämfört med många frameworks, Men samtidigt är det så fruktansvärt väl dokumenterat och dessutom väldigt likformigt uppbyggt, så lär man sig delegates så kan man iprincip använda vilken klass som helst;

Dessutom tycker jag iallafall det är väldigt smart, Jag hatar med passion överdriven ärvning av objekt, som många språk (men främst) java har.

 

----

 

(Att C skulle vara ett lågnivå språk håller jag däremot inte med om.)

Länk till kommentar
Dela på andra webbplatser

Jag tror det beror på att många blandar ihop Objective-C med Cocoa.

Jag kan för hela min värld inte se hur "hur dom tänker" kan vara svårt med Objective-C, förutom att method anrop görs via meddelanden [objekt methodnamn: argument] istället för object.methodnamn(argument) eller object->methodnamn(argument); ; Vad är det att förstå hur "dom tänker"?

Jag måste medge att det var förvirrande för mig i början.

Att programmera i Cocoa och Objective C är väldigt annorlunda all det som åtminstone undertecknad har programmerat i under de 30 år som gått sedan jag började. Men när man väl kommit in i det..... B)

Rekommenderas absolut! :yeahbaby:

 

Cocoa däremot är lite annorlunda jämfört med många frameworks, Men samtidigt är det så fruktansvärt väl dokumenterat och dessutom väldigt likformigt uppbyggt, så lär man sig delegates så kan man iprincip använda vilken klass som helst;

Dessutom tycker jag iallafall det är väldigt smart, Jag hatar med passion överdriven ärvning av objekt, som många språk (men främst) java har.

Det ska vara enkelt och lättöverskådligt, ja. Antar Sun hör till en annan företagskultur än Apple.

 

(Att C skulle vara ett lågnivå språk håller jag däremot inte med om.)

Ett mellannivåspråk kanske?

Länk till kommentar
Dela på andra webbplatser

Ingemar Ragnemalm
Hur kan du tycka att Objective-C är en röra, det är fruktansvärt rent, har inte en massa onödiga finesser (som C++).

Tycker faktiskt Objective-C nästan automatiskt gör att koden dessutom blir välskriven.

 

Men visst det är smalltalk så det smäller om det, men jag ser inte riktigt problemet när 99% av alla andra "objekt orienterade språk" rakt av kopierat Simula istället.

Grejen är att Simula-stuket följer det vanliga Algol-stuket där man i grund och botten ligger rätt nära matematiskt uttryckssätt, vilket är en fördel. Det som är riktigt rörigt är att Objective-C både har det och Smalltalk-stuket, huller om buller. Det finns flera olika sätt att göra samma sak och bara ett sätt är rätt i varje fall. Du måste ha två tankesätt på en gång i stället för ett. Det är väl klart att det är stökigare och förlänger inlärningstiden?

 

Jag ser faktiskt inga fördelar med ObjC, och tycker att det är allt annat än "rent". Man försöker sitta på två stolar, och det behöver man inte vara väldigt lärd för att veta hur det går.

Länk till kommentar
Dela på andra webbplatser

Grejen är att Simula-stuket följer det vanliga Algol-stuket där man i grund och botten ligger rätt nära matematiskt uttryckssätt, vilket är en fördel. Det som är riktigt rörigt är att Objective-C både har det och Smalltalk-stuket, huller om buller. Det finns flera olika sätt att göra samma sak och bara ett sätt är rätt i varje fall. Du måste ha två tankesätt på en gång i stället för ett. Det är väl klart att det är stökigare och förlänger inlärningstiden?

 

Jag ser faktiskt inga fördelar med ObjC, och tycker att det är allt annat än "rent". Man försöker sitta på två stolar, och det behöver man inte vara väldigt lärd för att veta hur det går.

 

Visst du har två olika syntax beroende på om du jobbar med objekt eller procedurellt,

men du verkar missta dig på att ObjC är ett helt nytt språk,

det är C med objektorientering, och message passingingen är anledningen den vekatypningen och sena bindningen är möjlig att genomföra på ett elegant sätt.

Och den procedurella baksidan gör det möjligt att interagera med allt som C stödjer,

och ja meddelande hanteringen är bara syntax socker; du kan använda dig av objc bibliotek från C också- om än något krångligare.

 

Men titta istället på ObjC klassers layout, deras API och du ser något som är väldigt rent och lättläst,

och just det faktum att det bygger på C gör inlärningskurvan kortare, det är iallafall min uppfattning,

jag kunde C sedan tidigare och att lära mig ObjC tilläggen tog inte mer än någon dag.

 

Tillskillnad från dagar till veckor när jag lärde mig Python, erlang osv (visserligen är funktionella språk som erlang helt annorlunda tänk)

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.



×
×
  • Skapa nytt...