• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Was soll ich als 1. lernen?

michibike

Golden Delicious
Registriert
29.04.09
Beiträge
7
Hallo Zusammen!

Ich hoffe ich bin hier am richtigen Ort mit meiner Frage:

Ich möchte gerne einmal in die Welt des Programierens (heisst das so? :)) einsteigen. Als sehr weites Ziel, möchte ich gerne einmal eine iPhone App programmieren. Beginnt man am besten gleich mit der Sprache die man braucht um diese Apps zu programmieren oder gibt es da so einen Grundstein, den man haben sollte. Wenn ja, was ist das?

Einen schönen 1. Mai noch!
Michibike

Übrigens:
Bis jetzt habe ich überhaupt keine Erfahrung mit dem Programmieren.
 

Patrick Rollbis

Moderator
AT Moderation
Registriert
22.10.06
Beiträge
6.189
Stichwort lautet Objective-C.

Schau dich bei Amazon nach Bücher um. Damit kann man sowas recht gut lernen.
 

michibike

Golden Delicious
Registriert
29.04.09
Beiträge
7
ok danke. bin ich richtig mit der meinung, dass Objective-c das gleiche ist wie C++?
 

Patrick Rollbis

Moderator
AT Moderation
Registriert
22.10.06
Beiträge
6.189
Nicht ganz.
Zitat vom Wiki:
Philosophical differences between Objective-C and C++
The design and implementation of C++ and Objective-C represent different approaches to extending C.
In addition to C’s style of procedural programming, C++ directly supports object-oriented programming, generic programming, and metaprogramming. C++ also comes with a large standard library which includes several container classes. Objective-C, on the other hand, adds only object-oriented features to C. Objective-C in its purest fashion does not contain the same number of standard library features, but in most places where Objective-C is used, it is used with an OpenStep-like library such as OPENSTEP, Cocoa, or GNUstep which provide similar functionality to some of C++’s standard library.
One notable difference is that Objective-C provides runtime support for some reflective features, whereas C++ adds only a small amount of runtime support to C. In Objective-C, an object can be queried about its own properties, for example whether it will respond to a certain message. In C++ this is not possible without the use of external libraries.
The use of reflection is part of the wider distinction between dynamic (run-time) features versus static (compile-time) features of a language. Although Objective-C and C++ each employ a mix of both features, Objective-C is decidedly geared toward run-time decisions while C++ is geared toward compile-time decisions. The tension between dynamic and static programming involves many of the classic trade-offs in programming.
 

michibike

Golden Delicious
Registriert
29.04.09
Beiträge
7
oh, sorry auf wikipedia hätt ich auch selber kommen können...
 

JackOfSpades

Transparent von Croncels
Registriert
18.04.09
Beiträge
310
Also, ich hab mit den recht gut detailierten Video-Podcast "Hot Cocoa" die Grundsteine des Programmierens gelernt.
Hier ist der Link zur normalen Version, es gibt allerdings auch eine HD-Version: Hot Cocoa

Wenn du noch nie Programmiert hast, würde ich dir raten, ein bisschen mit Processing rumzuspielen. damit kann man Java-Applets machen, und die Sprache ist sehr stark vereinfacht, auch, wenn man mit viel Erfahrung tolle Sachen herbeizaubern kann. Die Referenz im Internet ist auch gut beschrieben und mit den mit-installierten Programmen kann man auch viel lernen. Processing ist eine gute Variante, um die allgemeinen Programmier-Ticks wie int, float, boolean, if, switch, usw. zu lernen.
Hier der Link: Processing

Hier ist dann noch eine Seite, die mir ein Freund geschickt hat, ich aber noch nie richtig durchgenommen habe:
Cocoa Dev Central
 
  • Like
Reaktionen: doeme89

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
michibike: Du solltest vor allem Anfangen. Und Dir sollte klar sein, dass es ein steiniger Weg wird. Ich habe etwa zwei Jahre gebraucht, bis ich das erste Programm, dass ich auch so nennen würde, geschrieben habe

Gruss

Alex
 

michibike

Golden Delicious
Registriert
29.04.09
Beiträge
7

JackOfSpades

Transparent von Croncels
Registriert
18.04.09
Beiträge
310
Eine Frage, michibike: Hast du schon mal programmiert, oder bist du komplett neu in diesem Gebiet?
Wenn du rumspielen möchtest, könntest du mal den Quartz Composer ausprobieren. Da musst du keinen Code einschreiben, und man kann mit wenig Klicks tolle Effekte erzielen.
Jössas, ich hör mich ja schon an wie einer dieser Apple-PR-Typen...
 

JackOfSpades

Transparent von Croncels
Registriert
18.04.09
Beiträge
310
Oh, danke, hab ich nicht gesehen.
Also, ich habe mit Processing angefangen. Damit erspart man sich viele Befehle, hat tolle Funktionen und vereinfacht dir alles.
 

Jamsven

London Pepping
Registriert
21.11.07
Beiträge
2.046
michibike: Du solltest vor allem Anfangen. Und Dir sollte klar sein, dass es ein steiniger Weg wird. Ich habe etwa zwei Jahre gebraucht, bis ich das erste Programm, dass ich auch so nennen würde, geschrieben habe

Gruss

Alex

ObjC & Cocoa im Speziellen oder allgemein mit der Sprache deiner Wahl?
 

MacAlzenau

Golden Noble
Registriert
26.12.05
Beiträge
22.501
Ich denke, es bringt viel, erstmal mit einer "bequemen" Sprache zu ein paar Erfolgen zu kommen. Da bieten sich Skriptsprachen an. Der Hardcore-Programmierer stöhnt da natürlich oder lächelt, aber man muß schon recht überzeugt sein von seinem Weg, wenn man erst nach zwei Jahren etwas Verwertbares in Händen hat.

Ich habe mal vor vielen Jahren GFA-Basic ausprobiert (ein sehr weit entwickeltes Basic mit vielen Möglichkeiten hinsichtlich Funktionen und Routinen, lokalen Variabeln etc., speziell für den Atari), und das hat viele Punkte wie Menüleisten etc. bereitgestellt, man konnte sich auf die eigentliche Aufgabe konzentrieren. Das erste Programm, das Meßwerte einlaß und ein Kluftrosendiagramm zeichnete, war wirklich in wenigen Tagen geschrieben.
Leider bin ich dann nicht sehr viel weiter gekommen.

Man braucht auch ein Ziel also ein Programm, das man sich wünscht, um am Ball zu bleiben (außer natürlich wenn einem Programmieren als Berufsziel vorschwebt.)
 

Jamsven

London Pepping
Registriert
21.11.07
Beiträge
2.046
Ich denke, es bringt viel, erstmal mit einer "bequemen" Sprache zu ein paar Erfolgen zu kommen. Da bieten sich Skriptsprachen an. Der Hardcore-Programmierer stöhnt da natürlich oder lächelt, aber man muß schon recht überzeugt sein von seinem Weg, wenn man erst nach zwei Jahren etwas Verwertbares in Händen hat.

Ich habe mal vor vielen Jahren GFA-Basic ausprobiert (ein sehr weit entwickeltes Basic mit vielen Möglichkeiten hinsichtlich Funktionen und Routinen, lokalen Variabeln etc., speziell für den Atari), und das hat viele Punkte wie Menüleisten etc. bereitgestellt, man konnte sich auf die eigentliche Aufgabe konzentrieren. Das erste Programm, das Meßwerte einlaß und ein Kluftrosendiagramm zeichnete, war wirklich in wenigen Tagen geschrieben.
Leider bin ich dann nicht sehr viel weiter gekommen.

Man braucht auch ein Ziel also ein Programm, das man sich wünscht, um am Ball zu bleiben (außer natürlich wenn einem Programmieren als Berufsziel vorschwebt.)

Scriptsprachen sind aber dafür etwas zu bequem. Ich würde ja eher mit C anfangen, da dieses hier und da auch bei Objektive C angewendet wird.
 

bloodworks

Strauwalds neue Goldparmäne
Registriert
01.09.06
Beiträge
643
Reines C ist natürlich für den Anfang etwas trocken.

Alex

Würde ich nicht sagen. Man lernt mit C am besten die Grundlagen. Man sollte sich wirklich klar machen, was ein Zeiger ist, rekursive Aufrufe wirklich lernen und sich mit simplen bis schwierigen Algorithmen die Basics reintun. Wenn du mit einer Sprache wie ObjC oder C# oder JAva anfängst, dann lernst du erstmal Libraries auswendig und verstehst Algorithmen nicht. Deshalb C oder C++ ohne Frameworks oder Libraries (malabgesehen von stdio oder so was), zumindest würd ich das so machen.
 

Jamsven

London Pepping
Registriert
21.11.07
Beiträge
2.046
Reines C ist natürlich für den Anfang etwas trocken.

Alex
Echt???
Damit kann man witzige Sachen machen( hab ich von Singh's page):
Code:
#include <sys/types.h>
#include <sys/sysctl.h>

#define KERN_PANICINFO_TEST (KERN_PANICINFO_IMAGE + 2)

int
main(void)
{
    size_t oldnewlen = 0;
    int mib[3] = { CTL_KERN, KERN_PANICINFO, KERN_PANICINFO_TEST };
	
    return sysctl(mib, 3, NULL, (void *)&oldnewlen, NULL, oldnewlen);
}
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
Mit reinem C kann man noch viel schönere Sachen machen:
Code:
long a=1e4,d,h; unsigned b,c=21014,e,f[21014],g,i;
main(){for(;b=c,c-=14; i=printf("%04d",e+d/a),e=d%a)
  while(--b) d=h*b+a*(i?f[b]:a/5), g=b*2-1, h=d/g, f[b]=d-h*g;}
:cool: