Announcement

Collapse
No announcement yet.

Software Entwickeln? Grundlagen :)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Software Entwickeln? Grundlagen :)

    Hi,

    ich studiere nun Informatik im 2. Semester. Bin also noch relativ neu in der Welt der Programmierer. Haben in der Uni bisher nur C und C++ behandelt. Ich versuche grade mich selbst ein wenig weiter zu entwickeln und möchte mir Wissen aneignen. Ich habe jedoch erhebliche Verständnisschwierigkeiten in einem Punkt und ich hoffe IHR könnt mir helfen.
    Wir haben in C oder C++ bisher nur Sachen gemacht wie "Eine Zahlenkette muss vom Benutzer eingegeben werden....blablabla" oder "Der Käufer bekommt 15% Rabatt auf den Bruttopreis und zahlt.... ".
    Ich habe viel gesucht im Internet, jedoch komm ich nicht drauf wie man aus solchen Programmen (die ja nur in CMD u.ä. ausgegeben werden) eine Software werden soll. Mir ist klar, dass man auch Java nutzt, jedoch hab ich mir auch das angeschaut und bin nicht wirklich weiter gekommen. Ich frage mich nur, wie macht man die Software. Was für Sprachen werden verwendet, was für Tools, wie/wo fängt man an und wo kann ich sowas lernen :O

    Hoffe ihr teilt euer Wissen mit mir.

    Lg
    Nebi
    "Programming is like sex. One mistake and you have to support it for the rest of your life."

  • #2
    Nun, im 2. Semester hast du noch viel vor dir.

    Eine Software benötigt nicht zwingend ein GUI mit bunten Fenstern und sonstigen Elementen. Es gibt Tools die sind riesengross, ohne dass man auf dem Bildschirm etwas sieht, ausser vielleicht der Meldung "Programm erfolgreich beendet."

    Ich denke du wirst noch früh genug mit Umgebungen wie Java oder C# in Berührung kommen und damit Programme schreiben. Für die Funktion und das Verständnis einer Software ist es häufig gar nicht nötig ein GUI zu haben, es vereinfacht nur die Benutzung der Software.

    Comment


    • #3
      Die Darstellung macht nicht die Sprache sondern das Betriebssystem. Und dafür gibt es dann eine API gegen die man programmiert. Diese APIs sind weitestgehend sprachunabhängig. Viele Frameworks wie .Net und die Java Bibliotheken bringen wiederum Kapselungen dieser APIs mit gegen die man Programmieren kann. Worauf ich hinaus will wenn du fragst wie man eine Benutzeroberfläche gestalltet jenseits der Konsole dann geht es nicht um die Sprache sondern erstmal darum auf welchem Betriebssystem bzw. welchem das OS abstrahierende Framework man benutzen will. Da C doch sehr Low Level ist macht es keinen Sinn sich da mit UI Programmierung zu qualen. Wenn du doch dazu Lust hast und Windows benutzt dann besorg die eine altes "Programming Windows" Buch von Charles Petzold. Der erklärt alle dreckigen Details der Windows API bezüglich Programmierung von Desktopanwendungen.

      Und solltest du tatsächlich Informatik studieren dann wird es da eher weniger um UI programmierung gehen auch nicht in späteren Semestern. Denn dadurch lernt man nicht programmieren sondern baut höchstens Wissen über spezielle APIs auf. Akademisch gesehen also eher nutzloses totes Wissen.

      Comment


      • #4
        Originally posted by Ralf Jansen View Post
        Die Darstellung macht nicht die Sprache sondern das Betriebssystem. Und dafür gibt es dann eine API gegen die man programmiert. Diese APIs sind weitestgehend sprachunabhängig. Viele Frameworks wie .Net und die Java Bibliotheken bringen wiederum Kapselungen dieser APIs mit gegen die man Programmieren kann. Worauf ich hinaus will wenn du fragst wie man eine Benutzeroberfläche gestalltet jenseits der Konsole dann geht es nicht um die Sprache sondern erstmal darum auf welchem Betriebssystem bzw. welchem das OS abstrahierende Framework man benutzen will. Da C doch sehr Low Level ist macht es keinen Sinn sich da mit UI Programmierung zu qualen. Wenn du doch dazu Lust hast und Windows benutzt dann besorg die eine altes "Programming Windows" Buch von Charles Petzold. Der erklärt alle dreckigen Details der Windows API bezüglich Programmierung von Desktopanwendungen.

        Und solltest du tatsächlich Informatik studieren dann wird es da eher weniger um UI programmierung gehen auch nicht in späteren Semestern. Denn dadurch lernt man nicht programmieren sondern baut höchstens Wissen über spezielle APIs auf. Akademisch gesehen also eher nutzloses totes Wissen.

        Ok soweit hab ich das Verstanden. Ich meinte aber eher sowas wie z.B. angenommen du willst eine Software bauen, welche die Emails aus deinem Emailkonto zählt und dir im Programm anzeigt, wieviel Email im Posteingang sind. Mir ist leider grad kein besseres Beispiel eingefallen. Ich wäre jetzt bei dieser Aufgabe total überfordert. Ich wüsste nicht mal wo ich anfangen soll, da dies alles nichts damit zutun hat, was ich gelernt habe. Im Internet finde ich auch nichts dazu :/ Schon komisch der Einstieg in die Entwicklung :/
        "Programming is like sex. One mistake and you have to support it for the rest of your life."

        Comment


        • #5
          Du kannst keine Buchhaltung programmieren, wenn du nicht weißt wie Buchhaltung funktioniert. Aus diesem Grunde hat der Kunde o.a. dir ein Pflichtenheft/Anwenderforderungen zur Verfügung zu stellen, in dem drin steht was wann wo wie zu passieren hat, wie es aussehen soll, was alles geprüft werden soll usw. Darüber spricht man dann, tasucht sich aus und sammelt Informationen.

          Zu deinem eMail-Beispiel musst du dir also erstmal die Infos besorgen, wie eMail funktioniert. Das sind die Protokolle SMTP und POP3/IMAP. Also siehst du dir diese an. Da du keine Lust haben wirst diese selbst zu implementieren, suchst du nach einer Sprache, die ein Framework oder Lib hat die die Protokolle weitgehend implementieren. Mit denen arbeitetst du dann.
          Warum du zum Thema eMail allerdings "nichts" im Internet findest, erschließt sich nicht
          Christian

          Comment


          • #6
            Ich habe nicht direkt nach Email gesucht, sondern allgemein Software entwicklung. Ich habe nicht mal ein Tutorial gefunden wie vlt jemand erklärt, wie er den Anfang zu einem Programm macht etc.
            Habt ihr vlt eins?
            "Programming is like sex. One mistake and you have to support it for the rest of your life."

            Comment


            • #7
              Zu was für einem Programm? Mit welcher Sprache? Wenn du die Aufgabe hast "lies eine Datei ein, ändere jedes 3. Byte, und schreibe die Daten in eine neue Datei" ist das doch etwas völlig anderes als wenn die Aufgabe lautet "Zähle die eMails und stelle mir das Ergebnis tageweise dar".

              Dur wirst ja auch wenig finden zu "wie handwerkere ich". Vielmehr musst du doch wissen, ob du ein Schrank tischlern willst oder eine Kerze ziehen. Danach richet sich dein Vorgehen und die Werkzeuge
              Zuletzt editiert von Christian Marquardt; 12.06.2014, 08:57.
              Christian

              Comment


              • #8
                Todo Liste:

                1. Betriebssystem aussuchen (Windows, Linux, Mac...)
                2. Programmiersprache aussuchen (Java, .Net, C++, Python, Javascript, Ruby...)
                3. Möglichkeiten der UI in der gewählten Sprache herausfinden. Falls UI gut genug -> gehe zu 4. Falls UI nicht gut genug -> gehe zu 2. oder vielleicht auch zu 1.
                4. In Erfahrung bringen wie man damit auf ein Email Konto zugreift und ein Framework dafür suchen
                5. UI und Email Framework miteinander verbinden

                Das wichtigste ist: Versuch Dein Problem in kleine eigenständige Probleme zu zerteilen. Dafür braucht es leider etwas Erfahrung, aber die bekommt man nur wenn man was tut.

                Comment


                • #9
                  Originally posted by fanderlf View Post
                  Todo Liste:

                  1. Betriebssystem aussuchen (Windows, Linux, Mac...)
                  2. Programmiersprache aussuchen (Java, .Net, C++, Python, Javascript, Ruby...)
                  3. Möglichkeiten der UI in der gewählten Sprache herausfinden. Falls UI gut genug -> gehe zu 4. Falls UI nicht gut genug -> gehe zu 2. oder vielleicht auch zu 1.
                  4. In Erfahrung bringen wie man damit auf ein Email Konto zugreift und ein Framework dafür suchen
                  5. UI und Email Framework miteinander verbinden

                  Das wichtigste ist: Versuch Dein Problem in kleine eigenständige Probleme zu zerteilen. Dafür braucht es leider etwas Erfahrung, aber die bekommt man nur wenn man was tut.

                  Das wird euch jetzt witzig vorkommen aber DAS ist genau, was ich gesucht habe
                  Als Student im 2. Semester kommen halt manchmal solche Verständnisschwierigkeiten. Liegt ein wenig daran, dass während des Studiums überwiegend "mathematische" programme entwickelt werden (Bsp. Zinsrechenautomat).
                  Wenn man dann am Rechner daheim sitzt und Firefox anmacht, denkt man sich "wtf... wie macht man sowas"
                  "Programming is like sex. One mistake and you have to support it for the rest of your life."

                  Comment


                  • #10
                    Ich war auch mal Student im 2. Semester und stand genauso planlos davor wie Du

                    Comment


                    • #11
                      Dann mach ich das mal so...
                      Ich überlege mir die Tage etwas, was ich entwickeln könnte. Etwas simples, mit graphischer Oberfläche. Wenn ich dazu fragen habe, kann ich die dann hier posten? Oder soll ich ein neues Topic machen?
                      "Programming is like sex. One mistake and you have to support it for the rest of your life."

                      Comment


                      • #12
                        Neue Frage -> Neues Thema
                        Christian

                        Comment


                        • #13
                          geht klar xD
                          "Programming is like sex. One mistake and you have to support it for the rest of your life."

                          Comment


                          • #14
                            Nur damit es nicht "untergeht", das könnte man an der Uni im ersten Semester lernen, denn es ist ein sagen wir nicht unbekanntes Verfahren.

                            Originally posted by fanderlf View Post
                            Todo Liste:
                            ...
                            Das wichtigste ist: Versuch Dein Problem in kleine eigenständige Probleme zu zerteilen.

                            Diese "Grundlagen" habe ich bereits in der Schule eingetrichtert bekommen - von einem sehr guten Lehrer.

                            "Divide and Conquer"
                            http://en.wikipedia.org/wiki/Divide_...quer_algorithm

                            Teile und herrsche, leicht zu merken und recht plastisch.
                            Gruß, defo

                            Comment


                            • #15
                              Originally posted by defo View Post
                              ...Diese "Grundlagen" habe ich bereits in der Schule eingetrichtert bekommen - von einem sehr guten Lehrer. ...
                              Den hatte leider nicht jeder :/

                              Comment

                              Working...
                              X