Tag: Code

Check My Code – Automatische Codeprüfung für C Programme (online)

14 Mrz

Auf der neuen Webseite checkMyCode.org können Programmierer kostenlos und online direkt ihre in C geschriebenen Programme mit Hilfe von einigen Millionen Regeln prüfen lassen. Die Regeln wurden dabei auf Basis einiger tausend Linux Pakete (200 Millionen LOC) erstellt. Findet die Software einen Regelverstoß, so wird dieser farblich hevorgehoben und kurz erklärt.

Praktisch wie ich finde, so kann man sich selber auf die schnelle überprüfen und findet potentielle Bugs noch bevor man das Programm überhaupt kompiliert hat :). Betrieben wird der Dienst übrigens vom Doktoranden Andrzej Wasylkowski und seinem Professor Andreas Zeller der Saarland Universität.

 

Quellcode Beispiele in zahlreichen Sprachen

09 Mrz

Auf der Seite Rosetta Code werden zahlreiche Code-Beispiele zu verschiedenen Programmiersprachen angeboten. Dabei geht es um die Darstellung ein und derselben Aufgabe in möglichst vielen verschiedenen Programmiersprachen. Dies erlaubt einen direkten Vergleich der Codelänge und der Komplexität der verschiedenen Sprachen.

Derzeit werden fast 200 Sprachen unterstützt, von denen aber nicht alle immer als Beispiel zur Verfügung stehen, diese Sprachen sind in 374 Kategorien von Aufgaben und Problemen angeordnet. Für gängige Probleme gibt es in fast jeder Sprache eine passende Lösung. Vor allem die unterschiedliche Codelänge fällt dabei auf. So benötigt zum Beispiel das Huffman Coding (Kompression) in J lediglich 14 Zeilen, in C aber ganze 174 (inkl. hübscher Formatierung bei beiden Beispielen).

Auf der Webseite gibt es weitere nette Beispiele.

import java.text.MessageFormat;
public class Beer{
   static String bottles(int n){
      return MessageFormat.format("{0,choice,0#No more bottles|1#One bottle|2#{0} bottles} of beer", n);
   }
   public static void main(String[] args){
      String byob = bottles(99);
      for (int x = 99; x > 0;) {
         System.out.println(byob + " on the wall");
         System.out.println(byob);
         System.out.println("Take one down, pass it around");
         byob = bottles(--x);
         System.out.println(byob + " on the wall\n");
      }
   }
}
 

.co.de

14 Dez

*rofl* – Mehr kann man dazu echt nicht sagen… Rechtliches dazu auch bei BasicThinking.

code

 

Prinzipien, Regeln und Praktiken für bessere Software

08 Sep

bannerDomain

Auf Clean Code Developer (CCD) geht es um Tipps, Regeln und Best Practices für sauberen und gut strukturierten Code. Egal in welcher objektorientierten Programmiersprache (und auch teilweise in anderen Sprachen), diese Webseite bietet einem einen Leitfaden seinen Programmierstil zu verbessern. Denn jeder ernsthafte Programmierer sollte diese Regeln teilweise oder ganz beherrschen und auch anwenden, meiner Meinung nach. Es macht den Source-Code besser lesbar und hilft Fehler zu vermeiden.

Die Einteilung in 7 CCD Grade hilft dabei:

  1. Schwarz
  2. Rot
  3. Orange
  4. Gelb
  5. Grün
  6. Blau
  7. Weiß

In den einzelnen Graden werden verschiedene Paradigma erklärt und anhand von Beispielen näher erläutert.

Einige Themen befassen sich zum Beispiel mit:

  • One Level of Abstraction
  • Single Responsibility Principle
  • Separation of Concerns
  • Interface Segregation Principle
  • Dependency Inversion Principle
  • Liskov Substitution Principle
  • Principle of Least Astonishment
  • Information Hiding Principle

Selber beschreiben sie sich so:

Softwareentwicklung braucht Profis. Was aber sind Profis? Menschen die mit der Softwareentwicklung Geld verdienen? Nein, das CcdTeam meint, es gehört mehr und anderes dazu.

Professionalität in der Softwareentwicklung hat nichts mit Geld zu tun. Sie hat auch nur bedingt mit einem bestimmten Ausbildungsweg zu tun. Wir kennen professionelle Softwareentwickler, die wenig oder gar kein Geld mit ihrer Software verdienen und wir kennen professionelle Softwareentwickler, die weder Diplom noch Doktortitel haben.

 

The Konami Code

08 Jun

konami_codeDer sogenannte Konami Code war früher eine Tastenfolge um auf alten Spielekonsolen ein Extra freizuschalten, so Ähnlich wie ein Cheatcode heute. In immer mehr Applikationen und sogar Webseiten wurde dieser Code ebenfalls eingebaut, so zum Beispiel auf Digg, in dem Google Reader, auf Facebook und auf einigen anderen Webseiten. Ebenso in zahlreichen Programmen für den PC, den Mac und jegliche Konsolen.

Der damalige Code lautete:

Hoch, Hoch, Runter, Runter, Links, Rechts, Links, Rechts, B, A

Heute wird er meistens auch noch so, oder leicht manipuliert genutzt. Wer das mal testen mag:

1. Auf www.aq.com gehen
2. Einfach die oben genannte Tastenfolge eintippen
3. Wundern ;)

Oder für Facebook:

1. facebook.com aufrufen
2. Folgenden Code eingeben: Hoch, Hoch, Runter, Runter, Links, Rechts, Links, Rechts, B, A, Enter, Enter
3. Scrollen ;)

Im Google Reader ist es wieder der Standard-Code, testet selbst was dann passiert :)

Mehr Codes und Programme findet ihr auf Wikipedia.