WinFuture-Forum.de: Programmier-Smalltalk - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 3 Seiten +
  • 1
  • 2
  • 3

Programmier-Smalltalk Guten Morgen - Guten Abend - Hallo Welt!


#1 Mitglied ist offline   def 

  • Gruppe: aktive Mitglieder
  • Beiträge: 429
  • Beigetreten: 19. Dezember 06
  • Reputation: 7
  • Geschlecht:Männlich

geschrieben 11. Mai 2013 - 19:30

Irgendwie hat ein Programmier-Smalltalk immer im Forum gefehlt - nun ist er da! Ich nutze die Gelegenheit gleich mal, um nobido nach seiner Anekdote zu einem C#-Buch zu fragen, die "zwei Bildschirmseiten in Anspruch nehmen" soll. Nun ja, ich bin gespannt...
Eingefügtes Bild
0

Anzeige



#2 _Niedlicher Zwerg_

  • Gruppe: Gäste

geschrieben 11. Mai 2013 - 20:14

Naja, mir fehlt eher ein Zwergen-Smalltalk. Programmierung ist immer so trocken.
0

#3 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 11. Mai 2013 - 21:33

Naja, zusammen mit VisualStudio's IntelliSense ist ja C# schon fast "Programmieren auf Windows für Idioten". :lol:

Was natürlich beileibe keine Kritik sein soll. Ganz im Gegenteil - man muß sich nichts mehr merken an Funktionsnamen oder Eigenschaftstypen oder sonstwas - man muß nur noch in etwa wissen, welche Module man braucht... und dafür gibt es MSDN.

Und wenn einem C-style nicht liegt, nimmt mein einfach VB oder eine der anderen CLI-Sprachen und baut sie nahtlos ein. Für den angehenden Coder sicherlich nett. :)


Was aber irgendwie auch der Punkt ist, was mich etwas zögern läßt, wenn es ums LERNEN geht.
Der AHA-Effekt ist sicherlich schnell da. Das ist schonmal arg positiv.
Andererseits werd ich das Gefühl nicht los, daß wenn man sich halbwegs sicher fühlt in C#, man diese Erfahrung immer noch nicht anderswohin transferieren kann. Dafür ist es, wie alle anderen CLI-Sprachen halt auch, etwas *zu* weit oben angesetzt.


Wo CLI durchaus punkten kann, ist in der Projekt- bzw. der Code-Architektur - will sagen, wie das alles strukturiert ist und miteinander zusammenarbeitet. Nur, ob man da als Newbie (der sich da grad erst reinfuchst) groß was davon hat? :unsure:


Ich hab damals mit Jscript auf dem IE4 angefangen. Mein allererstes Scriptlet (muß man dazu wohl sagen) war da eine HTML-Seite mit eingebauter Uhr. Hatte sogar praktischen Zweck; man konnte die als Hintergrundbild auf Windows95 mit der IE4-Erweiterung einbinden und hatte immer die Zeit im Blick. :)
(NB: HTML kam lange vorher. Aber da HTML ja statisch ist, betrachte ich das nicht als Programmiersprache, sondern halt wirklich als reine Beschreibungssprache.)

C# ist da, vom Stil und vom Schweregrad her, ähnlich wie J- und Javascript.

-- Noch einfacher vielleicht ist VB.NET. Aber die meisten Programmierbeispiele sind C# - auch auf MSDN, und da sind am ehesten Beispiele für alle CLI-Sprachen da); das müßte man also jeweils in VB.NET-Syntax reinpressen.

(Korrektur: meinte natürlich MSDN. :blush: )

Dieser Beitrag wurde von RalphS bearbeitet: 11. Mai 2013 - 21:36

"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#4 Mitglied ist offline   Kirill 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.590
  • Beigetreten: 04. Dezember 06
  • Reputation: 121
  • Geschlecht:Männlich
  • Wohnort:BT

geschrieben 12. Mai 2013 - 10:33

Wenn's schon um Smalltalk geht, ich finde die "Learnability" bei VB problematisch. Bei C# macht man einen Ausdruck mit { auf und mit } zu. Bei VB macht man einen Ausdruck zwar auch mit if und for und anderen selbstverständlichen Sachen auf, aber die Schlussklausel ist immer wieder verwirrend. Mal ist es end if, mal ist es, anstatt von end for, ein next i. Insgesamt führt die Betonung auf Begriffe dazu, dass man mehr im Kopf behalten muss.
Most rethrashing{
DiskCache=AllocateMemory(GetTotalAmountOfAvailableMemory);}
0

#5 Mitglied ist offline   Sturmovik 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.776
  • Beigetreten: 10. Januar 08
  • Reputation: 445
  • Geschlecht:unbekannt
  • Wohnort:In Reichweite der Kaffeemaschine
  • Interessen:IT, Luftfahrt, historische Technik

geschrieben 12. Mai 2013 - 11:11

JA, ist schon etwas verwirrend bei VB, aber mit Visual Studio nicht ganz so schlimm. Da wird alles was du aufmachst schon automatisch zugemacht.
«Geschichte wiederholt sich nicht, aber sie reimt sich» (Mark Twain)

Unix won't hold your hand. You wanna shoot your foot, Unix reliably delivers the shot.

True Cloudstorage
0

#6 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 12. Mai 2013 - 12:04

Ich finde es ja traurig das die CMD-Shell nicht erweitert wurde und stattdessen Powershell erfunden wurde:

Stattdessen würden zwar neue, aber auch redundante Funktionen umgesetzt, etwa die Power Shell. Aus seiner Sicht wäre es besser gewesen, die herkömmliche CMD-Shell zu erweitern, schreibt der Windows-Entwickler. Dafür hätten sich zahlreiche Entwickler eingesetzt, es sei aber abgelehnt worden.
0

#7 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 12. Mai 2013 - 12:04

Verwirrend?

Einfach nur andere Syntax. BASIC ist nicht C, und VB basiert auf ersterem (daher der Name) und C#... auf C.


Ich find C-like auch einfacher, weil strukturierter. Aber VB.NET ist so viel anders auch nicht.

Grob vereinfacht und ganz bestimmt mit Syntaxfehlern :P :

// C#
int i = 1;
if($i == 1)
{
 $i++;
}
else
{
 $i--
}



Struktur: if(Bedingung) {FallsWahr} else {FallsNicht} . Befehle mit ; terminiert.

' VB.NET

Dim i As Integer
If $i Eq 1 Then
i = $i + 1
Else 
i = $i - 1
EndIf



Struktur: If ... Then ... Else ... EndIf . Befehle mit <CRLF> terminiert.
Das ist alles. :)
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#8 Mitglied ist offline   def 

  • Gruppe: aktive Mitglieder
  • Beiträge: 429
  • Beigetreten: 19. Dezember 06
  • Reputation: 7
  • Geschlecht:Männlich

geschrieben 12. Mai 2013 - 18:41

Ich find das ja eh immer problematisch, wenn Leute in ein Forum kommen und schreiben "Ich will programmieren lernen, mit welcher Sprache soll ich anfangen?". An der Bandbreite der Antworten sieht man dann immer, wie unterschiedlich die Menschen doch denken und lernen.

Vom Minimalismus her fand ich ja immer die Sprache HQ9+ sehr beeindruckend. Hello World geht da mit dem folgenden Quellcode:

H

Ist also eigentlich die ideale Sprache für Anfänger.
Eingefügtes Bild
0

#9 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 12. Mai 2013 - 18:53

Och da ist doch diese Sprache interessanter :rolleyes:
http://de.wikipedia.org/wiki/Brainfuck
0

#10 Mitglied ist offline   def 

  • Gruppe: aktive Mitglieder
  • Beiträge: 429
  • Beigetreten: 19. Dezember 06
  • Reputation: 7
  • Geschlecht:Männlich

geschrieben 12. Mai 2013 - 18:58

Beitrag anzeigenZitat (d4rkn3ss4ev3r: 12. Mai 2013 - 18:53)

Och da ist doch diese Sprache interessanter :rolleyes:
http://de.wikipedia.org/wiki/Brainfuck

Schon mal ausprobiert?
Eingefügtes Bild
0

#11 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 12. Mai 2013 - 19:00

Nein. Du? Die Sprache macht ihren Namen auch alle Ehre.

Ich bleibe doch lieber bei Batch.
0

#12 Mitglied ist offline   def 

  • Gruppe: aktive Mitglieder
  • Beiträge: 429
  • Beigetreten: 19. Dezember 06
  • Reputation: 7
  • Geschlecht:Männlich

geschrieben 12. Mai 2013 - 19:07

Beitrag anzeigenZitat (d4rkn3ss4ev3r: 12. Mai 2013 - 19:00)

Nein. Du?

Auch nicht.

Beitrag anzeigenZitat (d4rkn3ss4ev3r: 12. Mai 2013 - 19:00)

Die Sprache macht ihren Namen auch alle Ehre.

Ich bleibe doch lieber bei Batch.

Entwickle doch mal deine eigene Programmiersprache. Die nennst du dann Batchfuck.
Eingefügtes Bild
0

#13 _d4rkn3ss4ev3r_

  • Gruppe: Gäste

geschrieben 12. Mai 2013 - 19:09

:D Schade das ich ab morgen die Woche über auf Montage bin.
Das wäre doch mal eine Idee
0

#14 Mitglied ist offline   Ludacris 

  • Gruppe: Moderation
  • Beiträge: 4.666
  • Beigetreten: 28. Mai 06
  • Reputation: 218
  • Geschlecht:Männlich

geschrieben 12. Mai 2013 - 19:40

ne die beste ist immer noch SPL http://de.wikipedia....amming_Language bzw. Java2k (Da es sich bei Java2K um eine wahrscheinlichkeitstheoretische Sprache handelt, lässt sich auch nur zu einer gewissen Wahrscheinlichkeit ein "Hello World" schreiben)
Spoiler

0

#15 Mitglied ist offline   Kirill 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.590
  • Beigetreten: 04. Dezember 06
  • Reputation: 121
  • Geschlecht:Männlich
  • Wohnort:BT

geschrieben 13. Mai 2013 - 07:21

Zur CMD gibt's ein paar recht einfache Begründungen.
Die Syntax ist inkonsistent jenseits von gut und böse. Alteingesessenen mag das egal sein, aber für Anfänger (und welche, die schon länger damit arbeiten, aber keine Vollnerds sind) ein Alptraum. Das würde heißen, dass man ohnehin alles umkrempeln hätte müssen. Nur kann man das nicht machen aus Kompatibilitätsgründen. Man hätte also so oder so zwei Syntaxen bekommen, eine alte und eine konsistente neue. Dazu die Technik. Die CMD sieht es schlichtweg nicht vor, Shellobjekte zu instantiieren.

Zuguterletzt ist die CMD, auch wenn man sie aufgepimpt hätte mit neuen Befehlen, immer noch textbasiert. Bei der Powershell werden hingegen Objekte übergeben samt Eigenschaften. Bei halbwegs komplexen Scripts merkt man da eine riesige Erleichterung. Wenn man Befehl|Filter schon mal unter Unix oder der alten Konsole geschrieben macht, mach das Filtern nach Textblöcken 0 Spaß. Außer man hat schon ein Filterprogramm, welches den Input versteht und mit einer einfachen Syntax versieht, dann braucht man aber für so ziemlich jede Ausgabe ein neues Filterprogramm. Bei der Powershell gibt's die Standardfilter "Sortiere nach Eigenschaft X", zum Beispiel. Kann man machen, weil intern alles wie ein Objekt weitergegeben wird.
Most rethrashing{
DiskCache=AllocateMemory(GetTotalAmountOfAvailableMemory);}
0

Thema verteilen:


  • 3 Seiten +
  • 1
  • 2
  • 3

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0