[JAVA] Seit ich vor ungefähr zwei Jahren IT-Student wurde, habe ich mich mit der Systemherstellung befasst

Intro

Dieser Artikel ist der 22. Tag des OIC ITCreate Club Adventskalenders 2016.

http://www.adventar.org/calendars/1484

Ist Prost auf gute Arbeit. Ich bin Koga, auch bekannt als Gacchan. Cupipo wie ein Baby mit Flügeln! Ich sage das nicht und esse nicht zu Hause. Ich bin Gacchan mit einem flachen Pseudonym.

Ja, lassen Sie uns mit dieser Selbsteinführung zum Verdienen von Zeilen auf das Hauptthema eingehen. (Drittes Mal)

Ich denke, dass das Gedichtelement diesmal stärker ist.

[Von hier an sind wahrscheinlich gedichtartige Elemente enthalten. Wenn Sie Qiita nicht gelesen haben, um solche Dinge zu lesen, empfehlen wir den Browser zurück]

Zunächst eine kleine Einführung über mich

Ich glaube, um diese Zeit im Jahr 2014 habe ich angefangen, IT (Programmierer) zu studieren.

Ich entschied mich für eine Berufsschule, also wollte ich früh lernen und HTML / CSS studieren und Spiele mit Java machen http://www.gamecradle.net/document/main/content/doki/introduction.html Dies Ich habe mit Bezug auf die Seite studiert.

Ungefähr zwei Jahre später habe ich verschiedene Quellcodes geschrieben, die sich auf verschiedene Werke und Produkte beziehen, aber es gibt unzählige Wände, die ich bisher getroffen habe.

Wenn ich diese Erfahrung jedoch vergesse, denke ich, dass es eine Verschwendung für mich wäre, und ich hoffe, dass die Junioren von ITCreateClub (http://itc.moe) sie als Lebensmittel verwenden können, wenn sie gegen eine ähnliche Wand stoßen. Ich würde es gerne reibungslos schreiben.

Anfrageformular erstmals mit PHP erstellt

Ungefähr im Dezember der ersten Klasse zu dieser Zeit ...? Ich wurde von einem mysteriösen Klassenkameraden, der Infrastruktur in derselben Klasse mag, gebeten, ein Anfrageformular mit PHP zu erstellen, weil ich ein Anfrageformular auf meinem Server haben wollte. Ich habe kein PHP verwendet und hatte nicht viel Wissen über das Web, aber ich stimmte zu, meine technischen Fähigkeiten zu verbessern. Die Implementierung hat begonnen.

Problem 1 Ich kann überhaupt kein anständiges HTML schreiben

Da ich nur alleine auf der Website studierte, wusste ich, was jedes ** Tag bedeutet, aber ich wusste nicht, wie ich es verwenden sollte **, und als ich später darauf zurückblickte, machte ich ein schreckliches Markup. ..

<form>
  <div> <!--← Dieser Div ist es nicht. Wenn Sie etwas umgeben, können Sie es nicht tun.-->
    <label for="name">Name</label>
    <input name="name" type="text" />
  </div>
  <div>
    <!--Kürzung-->
  </div>
</form>    

Was ich daraus gelernt habe, ist, dass die Grundlagen (Studium der Bedeutung von Tags und Syntax) durch Selbststudium verwaltet werden können, aber wie wird es verwendet ** und wie ist es üblich, es zu verwenden? ** Es wird gesagt, dass Sie, wenn Sie es tun, während Ihr Vorgänger Sie unterrichtet, anstatt es selbst zu tun, das Wichtige in der Programmierung erwerben, wie "** die Fähigkeit, Quellcode zu schreiben, den die andere Partei richtig lesen kann **". Ich verstehe das.

Problem 2 Es funktioniert nicht, auch wenn ich eine Kopie implementiere

Ich habe noch nie PHP verwendet, daher habe ich es implementiert, während ich es auf der Website überprüft habe. Das Produkt musste verschiedene Funktionen wie die E-Mail-Sendefunktion, die Funktion zum Betreiben von Cookies aus PHP und die Erfassung und Einfügung von Benutzeragenteninformationen bei JS und meiner damaligen Technologie enthalten. Ich musste etwas tun, das über meine Kräfte hinausging.

Deshalb habe ich den auf der Website veröffentlichten Quellcode aufgegriffen und auf verschiedene Arten implementiert ... w

Das Problem dabei ist jedoch, dass es Zeiten gibt, in denen ** die Copy / Paste-Implementierung nicht funktioniert **. Der Quellcode ist möglicherweise falsch, funktioniert möglicherweise aufgrund von Versionsunterschieden nicht, funktioniert möglicherweise nicht, weil die Umgebung nicht vorbereitet ist, oder funktioniert möglicherweise aufgrund verschiedener Faktoren nicht.

Eine Copy-and-Paste-Implementierung, die Sie verwenden, ohne die Implementierung zu verstehen, kann nur die Tatsache akzeptieren, dass sie nicht funktioniert, und Sie wissen nicht, wie Sie sie beheben können, sodass Sie nur eine andere Quelle finden können.

Quellcode, der endlich verfügbar war:

//SMTP-Servereinstellungen
    //Bei Google Mail ist die Berechtigung zum "Zugriff auf unsichere Apps" erforderlich
    // https://www.google.com/settings/security/lesssecureapps
    $mail->isSMTP(); //SMTP-Nutzungserklärung
    $mail->Host = 'smtp.gmail.com';  //SMTP-Server
    $mail->SMTPAuth = true;  //Mit oder ohne SMTP-Benutzerauthentifizierung
    $mail->Username = SEND_ACCOUNT; //SMTP-Konto
    $mail->Password = SEND_PASSWORD;    //SMTP-Passwort
    $mail->SMTPSecure = 'ssl';   //SMTP-Protokoll(SSL oder TLS)
    $mail->Port = 465;   //SMTP-Portnummer(SSL:465, TLS:587)

    //Einstellungen für E-Mail-Inhalte
    $mail->CharSet = "UTF-8";    //Zeichensatz(Der Standardwert ist'ISO-8859-1')
    $mail->Encoding = "base64";  //Codierung(Der Standardwert ist'8bit')
    $mail->setFrom(SEND_ACCOUNT, 'Anfrageformular');   //Von
    $mail->addAddress(TO_ADDRESS, 'Ziel');  //Ziel
    $mail->Subject = $subject; //E-Mail Betreff
    $mail->Body  = $content; //den Inhalt der E-Mail
    $mail->AddAttachment($_COOKIE['file']);   //Angehängte Datei

Wenn Sie Kommentare in einer so natürlichen Sprache haben, können Sie diese verwenden. Wenn Sie dies nicht tun, wissen Sie nur, dass sie nicht funktionieren, wenn Sie versuchen, sie vollständig zu verwenden.

Was ich über die Copy-and-Paste-Implementierung gelernt habe, ist, dass ich, wenn die Copy-and-Paste-Implementierung eine vollständige Funktion ist, nichts selbst tun kann. Selbst wenn ich sie verwende, beschränke ich sie auf einen kleinen Teil (z. B. einfache Validierung von Zeichenfolgen). Es ist besser, es zu behalten **.

Ein Browsergame, das beim Erstellen mit jQuery und CSS geholfen hat

Es ist eine Arbeit, die sich eher auf Design als auf Logik bezieht, und der Teil, der die Struktur von HTML erstellt und mit jQuery / CSS animiert, ist beeindruckend.

Problem 1: Ich habe bei der Planung zu viel über meinen großen Traum gesprochen

Es war eine Arbeit, die ich für eine Ausstellung bei einer bestimmten Veranstaltung gemacht habe, und zum Zeitpunkt der Planung hatte ich vor, viele Funktionen hinzuzufügen (z. B. Spiele mit mehreren Mustern spielen zu können), und ich habe versucht, ein lustiges Spiel zu machen.

Es war jedoch nicht von technischen Fähigkeiten begleitet, und es dauerte lange, eine Funktion zu implementieren.

Infolgedessen konnte ich kaum viele der Funktionen implementieren, die ich tun wollte **, und die Frist ist abgelaufen, daher bereue ich es sehr ...

Was ich daraus gelernt habe, ist die Wichtigkeit, zuerst ** Funktionen des Produkts ** zu priorisieren und zu implementieren. Ich habe die Priorität nur mündlich festgelegt. Als ich in eine Situation geriet, in der die Implementierung lange dauerte und ich keine Zeit hatte, entschied ich mich, mich beim Codieren in Eile zu entscheiden, und dachte, es sei eine Verschwendung. Überlegen. Es ist also in Ordnung, sich in ungefähr einer Stunde zu entscheiden. Es ist also sehr wichtig, ** Ihre Prioritäten einfach in einer Tabelle festzuhalten (selbst wenn Sie sich als Team entwickeln) **

Teamentwicklung in einer Klasse namens Systementwicklungsübung

In der Schule, die ich besuche (Osaka Information Computer College), werden wir ab der zweiten Hälfte des zweiten Jahres ein Team von 5 bis 8 Personen bilden und ein System entwickeln, das ** die tatsächliche Arbeit übernimmt ** (lacht).

Aus diesem Grund haben wir beschlossen, einen Webdienst zu erstellen, und die Arbeit wurde in zwei Teams aufgeteilt, ein Team, das die Frontverarbeitung implementiert, und ein Team, das die Serververarbeitung implementiert.

Das Problem dort war also das größte.

Problem 1: Es ist schön, eine Arbeitsteilung zu haben, aber das Design für die lose Kupplung war nicht gut gemacht

Wie ich oben erwähnt habe, habe ich versucht, die Teamarbeit aufzuteilen und umzusetzen, aber da ich keine Erfahrung damit hatte, ein für die Arbeitsteilung geeignetes ** Design zu erstellen, konnte ich es implementieren, indem ich das Dokument einfach irgendwie anhob. Ich dachte, es sei ein großes Problem, hineinzukommen.

Was ich daraus gelernt habe, ist, dass bei der Implementierung in einer Arbeitsteilung ** zumindest die Abteilungsteams so gestaltet werden müssen, dass keine Zweifel aneinander bestehen **. Natürlich denke ich, dass während der Implementierung Fragen auftauchen werden, aber um sie zu lösen, denke ich, dass es notwendig ist, die Grundidee richtig zu definieren und im Dokument anzusprechen.

Problem 2: Ich kann mich nicht erinnern, was ich zuvor gesagt habe

Dies hängt mit Problem 1 zusammen, aber ich denke, wenn Sie die Arbeit aufteilen oder ein Produkt als Team herstellen, wird zwangsläufig eine mündliche Kommunikation stattfinden. Die mündliche Kommunikation ist eine der effizientesten Kommunikationsmethoden, da sie einen schnellen Informationsaustausch und eine schnelle Kommunikation ermöglicht. Für das menschliche Gehirn ist es jedoch sehr schwierig, sich an alles zu erinnern, was im Detail gesagt wurde. Deshalb vergesse ich immer die Geschichte, die nur verbal war.

Um das Problem zu lösen, müssen Fotos wie Protokolle und Zeichnungen aufbewahrt werden.

In unserem Team haben zu Beginn alle, unabhängig vom Front- oder Serverteam, die Systemanforderungen mündlich mithilfe eines Whiteboards usw. definiert. Bitte halten Sie die Protokolle jedoch sehr genau. Zu,

Später, zum Zeitpunkt der Implementierung, "Was soll ich damit machen?" "Ich habe das Gefühl, dass ich das gesagt habe ..."

Gespräche wie dieses sind häufig vorgekommen.

Was ich daraus gelernt habe ist, dass ** Dokumente wirklich wichtig sind. Design ist wichtig. ** Es ist nur so dass. Lassen Sie uns visualisieren, was Sie entworfen haben. Es wird später wirklich schmerzhaft sein.

Zusammenfassung

Wie oben erwähnt, habe ich viele Dinge geschrieben, aber je mehr ich mich erinnerte, desto mehr schien es herauszukommen, also wollte ich aufhören, mich auf dem Weg w zu erinnern

Es gibt noch viele Punkte, über die man nachdenken muss, und es gibt viele Dinge, über die ich froh bin, dass ich sie getan habe. Deshalb werde ich über LT und Trinkpartys sprechen, anstatt über solche Artikel.

Ich denke, ich werde beim LT-Turnier darüber sprechen, an dem ich bald teilnehmen werde!

Hinweis zur LT-Teilnahme!

https://connpass.com/event/46806/

Ich habe teilgenommen, nachdem ich von Junjun (https://twitter.com/konojunya) unterrichtet wurde, aber da es sich um ein LT-Turnier handelt, das auf studentische Ingenieure in Kansai und gegen Schulen beschränkt ist, ist es möglich, mit Menschen von anderen Universitäten und Berufsschulen zu interagieren. Ich denke, es wird ein wirklich lustiges Turnier ...!

Es gibt noch mehr Tour-Slots (Stand 22. Dezember 2016), also besuchen Sie uns bitte! Vielen Dank!

Na dann, danke, dass du Poem und deine Beförderung bis zum Ende gelesen hast! Wünsche dir ein gutes Jahr! !!

Recommended Posts

Seit ich vor ungefähr zwei Jahren IT-Student wurde, habe ich mich mit der Systemherstellung befasst
2018. Es ist zwei Jahre her, seit ich SE geworden bin, also werde ich das Buch, das ich gelesen habe, enthüllen.
Es ist ein Jahr her, seit ich ab 28 Jahren Ingenieur wurde
Es ist ein Jahr her, seit ich ein arbeitender Android-Ingenieur geworden bin, und es sind fast zwei Jahre vergangen.
Es ist einen Monat her, seit ich ein Ingenieur von unerfahrenen ...