[JAVA] Depuis que je suis devenu étudiant en informatique il y a environ deux ans, je scrute jusqu'à présent la création du système.

Intro

Cet article est le 22ème jour du Calendrier de l'Avent 2016 du Club ITCreate de l'OCI.

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

Vive le bon travail. Je suis Koga, également connu sous le nom de Gacchan. Cupipo comme un bébé avec des ailes! Je ne dis pas ça et je ne mange pas à la maison. Je suis Gacchan avec un pseudonyme plat.

Oui, entrons dans le sujet principal avec cette auto-introduction pour gagner des lignes. (Troisième fois)

Je pense que l'élément poème est plus fort cette fois.

[À partir de maintenant, des éléments ressemblant à des poèmes sont probablement inclus. Si vous n'avez pas lu Qiita pour lire de telles choses, nous vous recommandons de retourner le navigateur]

Tout d'abord, une petite introduction sur moi-même

Je pense que c'est à cette époque en 2014 que j'ai commencé à étudier l'informatique (programmeurs).

J'ai décidé d'entrer dans une école professionnelle, j'ai donc décidé d'étudier tôt et d'étudier HTML / CSS et de créer des jeux avec Java http://www.gamecradle.net/document/main/content/doki/introduction.html J'étudiais en référence au site.

Environ deux ans se sont écoulés depuis lors, et j'ai écrit divers codes sources pour divers travaux et produits, mais il y a d'innombrables murs que j'ai touchés jusqu'à présent.

Cependant, si j'oublie cette expérience, je pense que ce serait un gaspillage pour moi, et j'espère que les juniors d'ITCreateClub (http://itc.moe) pourront l'utiliser comme aliment lorsqu'ils heurteront un mur similaire. Je voudrais l'écrire de manière fluide.

Formulaire de demande réalisé avec PHP pour la première fois

Vers décembre de la première année à cette époque ...? Un camarade de classe mystérieux qui aime les infrastructures de la même classe m'a demandé de créer un formulaire de demande en PHP parce que je voulais un formulaire de demande à mettre sur mon serveur. Je n'ai pas utilisé PHP et je n'avais pas beaucoup de connaissances sur le Web, mais j'ai accepté d'améliorer mes compétences techniques. La mise en œuvre a commencé.

Problème 1 Je ne peux pas écrire du HTML décent en premier lieu

Je viens d'étudier moi-même sur le site Web, donc je connaissais la signification de chaque ** tag, mais je ne savais pas comment l'utiliser **, et quand j'y ai regardé plus tard, j'ai fait un balisage terrible. ..

<form>
  <div> <!--← Cette div n'est-ce pas. Si vous entourez quoi que ce soit, vous ne pourrez pas le faire.-->
    <label for="name">Nom</label>
    <input name="name" type="text" />
  </div>
  <div>
    <!--réduction-->
  </div>
</form>    

Ce que j'en ai appris, c'est que les bases (étude de la signification des balises et de la syntaxe) peuvent être gérées par auto-apprentissage, mais comment est-il utilisé ** et comment est-il courant de l'utiliser? ** On dit que si vous le faites en vous faisant apprendre par votre prédécesseur plutôt que par vous-même, vous acquerrez l'essentiel de la programmation, comme «** la capacité d'écrire du code source que l'autre partie peut lire correctement **». Je comprends que.

Problème 2 Cela ne fonctionne pas même si j'implémente une copie

Je n'ai jamais utilisé PHP, donc je l'ai implémenté en le vérifiant sur le site. Le produit devait intégrer diverses fonctions, telles qu'une fonction d'envoi de courrier, une fonction pour faire fonctionner les cookies de PHP, et il était nécessaire d'acquérir et de coller des informations d'agent utilisateur avec JS et ma technologie à l'époque. Je devais faire quelque chose au-delà de mes forces.

Par conséquent, j'ai repris le code source publié sur le site Web et je l'ai implémenté de différentes manières ...

Cependant, le problème avec cela est qu'il y a des moments où ** l'implémentation copier / coller ne fonctionne pas **. Le code source peut être erroné, il peut ne pas fonctionner en raison de la différence de version, il peut ne pas fonctionner car l'environnement environnant n'est pas préparé ou il peut ne pas fonctionner en raison de divers facteurs.

Une implémentation de copier-coller que vous utilisez sans comprendre son implémentation ne peut accepter que le fait qu'elle ne fonctionne pas, et vous ne savez pas comment la réparer, vous ne pouvez donc trouver qu'une autre source.

Code source enfin disponible:

//Paramètres du serveur SMTP
    //Dans le cas de Gmail, l'autorisation "d'accéder aux applications non sécurisées" est requise
    // https://www.google.com/settings/security/lesssecureapps
    $mail->isSMTP(); //Déclaration d'utilisation SMTP
    $mail->Host = 'smtp.gmail.com';  //Serveur SMTP
    $mail->SMTPAuth = true;  //Avec ou sans authentification utilisateur SMTP
    $mail->Username = SEND_ACCOUNT; //Compte SMTP
    $mail->Password = SEND_PASSWORD;    //Mot de passe SMTP
    $mail->SMTPSecure = 'ssl';   //Protocole SMTP(SSL ou TLS)
    $mail->Port = 465;   //Numéro de port SMTP(SSL:465, TLS:587)

    //Paramètres de contenu du courrier
    $mail->CharSet = "UTF-8";    //Jeu de caractères(La valeur par défaut est'ISO-8859-1')
    $mail->Encoding = "base64";  //codage(La valeur par défaut est'8bit')
    $mail->setFrom(SEND_ACCOUNT, 'Formulaire de demande');   //De
    $mail->addAddress(TO_ADDRESS, 'Destination');  //destination
    $mail->Subject = $subject; //Sujet du courriel
    $mail->Body  = $content; //le contenu de l'e-mail
    $mail->AddAttachment($_COOKIE['file']);   //Pièce jointe

Si vous avez des commentaires dans un tel langage naturel, vous pouvez réussir à l'utiliser, mais si vous ne le faites pas, vous saurez seulement que cela ne fonctionnera pas si vous essayez de l'utiliser entièrement.

Ce que j'ai appris sur l'implémentation copier-coller, c'est que si l'implémentation copier-coller est une fonction complète, je ne peux rien faire par moi-même, donc même si je l'utilise, je vais la limiter à une petite partie seulement (comme la simple validation des chaînes de caractères). Il vaut mieux le garder **.

Un jeu par navigateur qui a aidé à créer avec jQuery et CSS

C'est un travail lié au design plutôt qu'à la logique, et la partie qui crée la structure du HTML et l'anime à l'aide de jQuery / CSS est impressionnante.

Problème 1: j'ai trop parlé de mon grand rêve lors de la planification

C'était un travail que j'ai réalisé pour une exposition lors d'un certain événement, et au moment de la planification, je prévoyais d'ajouter de nombreuses fonctions (comme pouvoir jouer à des jeux avec plusieurs modèles), et j'essayais de faire un jeu amusant.

Cependant, il n'était pas accompagné de capacités techniques et ** il a fallu beaucoup de temps pour mettre en œuvre une fonction **.

En conséquence, je pouvais à peine implémenter la plupart des fonctionnalités que je voulais faire **, et la date limite est arrivée, j'ai donc beaucoup de regrets ...

Ce que j'en ai appris, c'est l'importance de commencer par prioriser et mettre en œuvre ** les fonctionnalités du produit **. Je n'ai décidé de la priorité que verbalement, alors quand je me suis retrouvé dans une situation où la mise en œuvre prenait beaucoup de temps et que je n'avais pas le temps, j'ai décidé de décider en codant à la hâte, alors j'ai pensé que c'était du gaspillage. pense. Vous pouvez donc décider en une heure environ, il est donc très important de ** enregistrer facilement vos priorités dans une feuille de calcul (même si vous vous développez en équipe) **

Développement d'équipe dans une classe appelée exercice de développement de système

À l'école que je fréquente (Osaka Information Computer College), à partir de la seconde moitié de la deuxième année, nous formerons une équipe de 5 à 8 personnes et développerons un système qui ** suppose un travail réel ** (rires).

Par conséquent, nous avons décidé de créer un service Web, et le travail a été divisé en deux équipes, une équipe qui met en œuvre le traitement frontal et une équipe qui met en œuvre le traitement serveur.

Donc, le problème était le plus important.

Problème 1: C'est bien d'avoir une division du travail, mais la conception d'un couplage lâche n'a pas été bien faite

Comme je l'ai mentionné ci-dessus, j'ai essayé de diviser le travail d'équipe et de le mettre en œuvre, mais comme je n'avais aucune expérience de la conception d'un ** design adapté à la division du travail **, j'ai réussi à l'implémenter en élevant simplement le document d'une manière ou d'une autre. Je pensais que c'était un gros problème d'entrer.

Ce que j'ai appris de cela, c'est que lors de la mise en œuvre dans une division du travail, ** au moins les équipes divisionnaires doivent être conçues de manière à ce qu'il n'y ait aucun doute les unes sur les autres **. Bien sûr, je pense que des questions se poseront lors de la mise en œuvre, mais pour les résoudre, je pense qu'il est nécessaire de bien définir l'idée de base et de la soulever dans le document.

Problème 2: je ne me souviens plus de ce que j'ai dit plus tôt

Ceci est lié au problème 1, mais je pense que si vous divisez le travail ou fabriquez un produit en équipe, une communication orale se produira inévitablement. La communication orale est l'une des méthodes de communication les plus efficaces car elle permet un partage et une communication rapides des informations. Cependant, il est très difficile pour le cerveau humain de se souvenir de tout ce qui a été dit en détail, alors ** j'oublie toujours l'histoire qui n'était que verbale **.

Afin de le résoudre, il est nécessaire de conserver des photos telles que des minutes et des dessins.

Dans notre équipe, au début, tout le monde, quelle que soit l'équipe de front ou l'équipe du serveur, définissait verbalement la configuration système requise à l'aide d'un tableau blanc, etc., mais veuillez en garder les minutes très attentivement. Zu,

Plus tard, au moment de la mise en œuvre, "Que dois-je faire avec ça?" "J'ai l'impression de dire ça ..."

Des conversations comme celle-ci sont arrivées fréquemment.

Ce que j'en ai appris, c'est que ** les documents sont vraiment importants. Le design est important. ** C'est juste ça. Visualisons ce que vous avez conçu. Ce sera vraiment douloureux plus tard.

Résumé

Comme mentionné ci-dessus, j'ai écrit beaucoup de choses, mais plus je me souvenais, plus cela semblait sortir, alors je voulais arrêter de me souvenir en chemin w

Il y a encore beaucoup de points sur lesquels réfléchir, et il y a beaucoup de choses que je suis content d'avoir fait, alors je vais parler de LT et de soirées à boire au lieu d'articles comme celui-ci.

Donc, je pense que je vais en parler au tournoi LT auquel je vais bientôt assister!

Avis de participation LT!

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

J'ai participé après avoir été enseigné par Junjun (https://twitter.com/konojunya), mais comme il s'agit d'un tournoi LT limité aux étudiants ingénieurs du Kansai et contre les écoles, il est possible d'interagir avec des personnes d'autres universités et écoles professionnelles. Je pense que ce sera un tournoi vraiment amusant ...!

Il y a encore plus de créneaux de tournée (à compter du 22 décembre 2016), alors venez nous rendre visite! Je vous remercie!

Eh bien, merci d'avoir lu Poème et votre promotion jusqu'au bout! Je vous souhaite une bonne année! !!

Recommended Posts

Depuis que je suis devenu étudiant en informatique il y a environ deux ans, je scrute jusqu'à présent la création du système.
2018. Cela fait deux ans que je suis devenue SE, alors je vais exposer le livre que j'ai lu.
Cela fait un an que je suis devenu ingénieur à partir de 28 ans
Cela fait un an que je suis devenu ingénieur Android en activité, et cela fait presque deux ans.
Cela fait un mois que je suis devenu ingénieur sans expérience ...