Ravi de vous rencontrer, tout le monde vivant à Qiita Land.
Je n'avais pas envie de publier beaucoup parce que je sentais que Qiita avait beaucoup de gens formidables, mais je voulais faire une sortie, alors j'ai décidé de la publier.
Merci pour votre gentillesse.
En ce moment (2020/04), j'appartiens au Département d'Ingénierie de l'Information, étudiant de troisième année dans une certaine université. Avant d'entrer à l'université, j'avais une position de "programmation, qu'est-ce que c'est délicieux?", Mais une fois que j'ai fini d'apprendre la programmation orientée objet de Java en classe, je pense maintenant "Hé, la programmation est une douleur." A l'école, je parle souvent d'algorithmes, de théorie de l'information, d'OS, d'architecture informatique, de circuits numériques, etc. plutôt que de programmation, donc je n'écris pas vraiment beaucoup de code. Écrire du code est presque mon passe-temps. C'est pourquoi j'ai décidé de faire mon propre développement Web et de me former à l'écriture de code.
§ About Dans cet article, je vais vous montrer les étapes qu'un débutant qui est nouveau dans le développement d'applications Web devrait suivre pour échapper au copier-coller violent et coder pour lui-même tout en comprenant. C'est une chose à laquelle j'ai pensé et écrit.
J'apprends à utiliser des frameworks Web basés sur Python (Django
, Flask
). L'environnement de développement détaillé ci-dessous.
Macbook Pro macOS Catalina 10.15.4 13-inch
Python3 3.7.7
Flask 1.1.2
Django 2.2.2
J'écrirai dans l'ordre que j'ai appris.
** Choses apprises au Département de génie de l'information qui sont susceptibles d'être liées au développement Web **
Programmation orientée objet en Java (en particulier comprendre le champ, le constructeur, l'instance, l'héritage de classe)
** Everyone's Python 4th Edition 8th Print ** (publié par SB Creative)
Calcul de base
Différence de type de données
Héritage de classe
** HTML et CSS pour les personnes qui démarrent le Web, JavaScript Kihon Kihon ** (Kindle, par Makoto Taniguchi)
Structure HTML
Bases de JavaScript (bases de Vanilla JS
, jQuery
, Vue.js
)
** Progate HTML, cours CSS (gratuit uniquement) **
** Bougez et apprenez! Introduction au développement Python Django ** (publié par Shosuisha) --Comment fonctionne l'application Web --Construire un environnement pour Python et Django --Mécanisme de backend (routage, vue, interaction avec DB) --Mécanisme frontal (HTML, CSS, JS) --Déployer dans l'environnement de production
** Technologie prenant en charge le Web --HTTP, URI, HTML et REST ** (Kindle, par Yohei Yamamoto) --Concept de conception Web
Politique de mise en œuvre de l'URI (URL)
Concept de conception de protocole de transfert hypertexte (HTTP) --Autres (je ne l'ai pas encore lu)
J'ai rassemblé beaucoup de sources d'apprentissage, mais il a fallu un peu moins de deux ans ** pour terminer tout cela ... Ne fais pas ça.
** La plus grande erreur a été de solidifier la technologie de base sans fixer de but.
Si vous souhaitez développer une application Web! J'ai le sentiment fort de ne pas savoir quoi faire! S'il y a des gens qui disent ça, je pense qu'il vaut mieux être enthousiaste pour terminer ce montant en ** un an, de préférence six mois **. Je veux que vous vous penchiez en avant et que vous appreniez!
Voici les pierres d'achoppement auxquelles j'ai pensé à travers cet apprentissage et comment y faire face.
Je pense que la plupart des gens auront des problèmes avec cela. HTML
, CSS
, JS
, Python
, Django
, HTTP
, ... J'ai pensé que le mécanisme du Web est ** une variété de technologies couvrant divers domaines **, ce que l'on appelle ** l'art complet **. Au fait, les techniques énumérées ne suffisent pas. Au moins, la sécurité, la base de données, etc. ne suffisent pas.
La solution est totale, ** divisez les difficultés. ** (je me demande si ça peut se transmettre, c'est un moine Leroy nostalgique)
Pour être honnête, il est impossible pour les débutants de faire tout le développement par eux-mêmes (appelé un ingénieur full stack).
Il faut du temps pour apprendre toutes les techniques, et je suis frappé par l'énorme quantité de connaissances en premier lieu. Je suis assez cassé.
Si ** l'objectif est de terminer le produit **, je ne pense pas que ce soit une bonne idée de continuer à passer du temps à essayer d'atteindre cet objectif. Je pense qu'il est préférable de le faire dans une équipe qui combine des personnes avec divers domaines spécialisés. Si vous pensez que vous n'avez aucune compétence que vous pouvez gérer, vous pouvez le faire dans n'importe quel domaine, il vous suffit de terminer un livre d'introduction et d'essayer un autre produit en changeant les numéros dans ce livre d'introduction. Mais faisons-le. C'est un pas en avant pas à pas.
En revanche, si ** le but est d'apprendre la technologie autour des applications Web **, abordons divers aspects techniques et faisons pas mal d'erreurs et souffrons (du coup démon). Cela semble être votre technique d'acquisition de compétences la plus courte. Travaillons dur.
De mon point de vue personnel, je pense qu'il est préférable d'aller d'abord au ** front end **. Cela fait du bien quand HTML et CSS sont choisis. De plus, je pense que si vous mettez le front-end sur un hackathon, vous aurez l'impression d'avoir fait beaucoup de travail.
Le back-end est familier avec la langue et apprend également à utiliser le framework, donc il y a des moments où vous apprenez deux fois, donc je pense que cela prendra du temps entre le début des études et que vous puissiez réellement créer un produit (bien sûr). Je ne dis pas que le front-end peut se faire sans étudier, et personnellement c'est en train de devenir le domaine que je veux le plus étudier).
Quant à ce que je devrais étudier plus avant, je recommande ** Progate, qui ne nécessite pas de construction d'environnement, ** est terminé sur le navigateur, et ** les modifications sont immédiatement répercutées **. pense.
Les livres sont bons, mais si la date de publication est un peu plus tôt, le style d'écriture CSS peut être ancien, ou la version du framework peut être mise à jour et non prise en charge, alors vérifiez simplement si la date de publication est ancienne. Je pense qu'il vaut mieux le garder.
Honnêtement, je ne le sais pas (car je n'ai pas touché à d'autres langages et frameworks tels que Ruby pour le moment), mais une chose que je peux dire est que ** choisissez une langue que vous connaissez bien ** * * Je pense que c'est bon pour la santé mentale **.
Je jouais juste avec Python lorsque j'ai commencé à travailler avec des applications Web, j'ai donc choisi un framework Python. Fondamentalement, en développement, vous n'écrivez pas vous-même le code à partir de zéro, mais vous faites bon usage du code (bibliothèque) écrit par d'autres personnes, il est donc plus facile de s'habituer à la notation unique du langage. est.
Je suis prêt à recevoir de nombreuses erreurs lors du développement. Lorsqu'on traite cette erreur, je pense que c'est environ trois fois plus difficile pour une langue à laquelle vous n'êtes pas habitué qu'une langue avec laquelle vous êtes habitué à découvrir ce qui la cause.
Pour ceux qui n'ont touché à aucun langage, honnêtement, je ne recommande pas Python (en particulier Flask). Parce que la quantité d'informations sur le Web est extrêmement faible. (Le nombre de résultats de recherche de Qiita est ** Rails 33401, Flask 2346, Django 4588 (au 14 avril 2020) **, et je pense que la faiblesse du framework Python est écrasante.) Cette différence dans la quantité d'informations affecte la vitesse de développement, donc si vous ne l'avez jamais touchée, nous vous recommandons dans l'ordre Ruby on Rails
> Python Django
> Python Flask
.
Je pense qu'il y a des gens qui font cela alors qu'ils sont sur Google sur le net. C'est écrit comme ça sur cette page, mais il arrive souvent que ça soit écrit comme ça.
Dans un tel cas, la chose la plus utile est le ** document officiel ** ou ** livre appelé un chef-d'œuvre **.
La documentation officielle est dans les mots des développeurs et autres, et est souvent ** expliquée dans le sens le plus concis et le plus pointu, en forme d'étoile **. Au fait, le tutoriel officiel de Django, un framework d'application Web basé sur Python, est Dieu. Plutôt que de rechercher sur Google, pensez que vous avez été trompé par le tutoriel officiel et essayez de courir une fois. Les étapes à expliquer sont toutes gravées là où il est facile pour les débutants de trébucher.
De plus, il y a quelques livres que Qiita recommande que «ce livre soit lu». Parmi les articles qui disent essentiellement cela, ** les livres qui sont acclamés dans plusieurs articles sont essentiellement de bons livres **. Je pense qu'il vaut mieux chercher un livre de cette façon que de se fier aux critiques d'Amazon.
Si vous ne savez pas comment le mettre en œuvre, arrêtez de ** développer ** et ** d'essayer de google **, puis accédez à la ** documentation officielle ** ou aux ** livres appelés chefs-d'œuvre **. Vous devriez prendre le temps de le lire.
** Le chaos dans votre tête est organisé de manière agréable, ouvrant la voie à la mise en œuvre. ** (C'est une grande religion, mais c'est vrai)
** Étonnamment étudiant. C'est sérieux. ** **
Ma recommandation est ** Technologies supportant le Web --HTTP, URI, HTML et REST **, que j'ai mentionnées ci-dessus. Avez-vous parcouru le backend et vous êtes-vous demandé pourquoi vous utilisiez simplement GET et POST sur le Web? La réponse est dans ce livre. Ceci est une lecture incontournable.
** Le faites-vous seul? ** **
Je pense qu'il y a des utilisateurs du service, donc si possible, il vaut mieux se développer dans un lieu avec des gens.
Je pense qu'il existe une communauté d'ingénieurs et de designers dans tout le pays. Même si vous n'êtes pas doué pour ce genre de choses, vous pouvez aller au Mokumokukai ou autre. Si vous pensez que cela ne vous convient pas, vous pouvez l'essayer au restaurant familial avec un ami fiable.
Dans la région où j'habite, une installation de coworking où se réunissent ingénieurs et designers est née ce printemps, et j'en suis un grand utilisateur.
Je pense qu'il vaut mieux le faire avec quelqu'un, pas seul. Je ne pense pas qu'un ingénieur puisse être fort seul.
Si quoi que ce soit, cela peut être pour les gens qui ignorent la vitesse et veulent solidifier le terrain et continuer. En gros, c'est comme apprendre dans l'ordre du recto → programmation orientée objet → backend → document officiel ou livre.
La raison pour laquelle les langages statiquement typés qui déclarent des types sont bons est que vous ne comprenez souvent pas pourquoi votre code ne fonctionne pas à moins que vous ne soyez parfaitement conscient du concept de types. Fondamentalement, de nombreux langages Web (Ruby, Python) sont des langages typés dynamiquement (comme), mais je sais qu'il est pratique de masquer le concept de types. Je pense que ce ne sont que des humains. Il semble qu'un adulte avec un visage doux était en fait une personne effrayante. Cela semble être honnêtement des avantages et des inconvénients, mais je pense que c'est ce que je pense.
C'est devenu étonnamment long. Y avez-vous mis trop d'efforts?
En fait, c'est un article qui n'est pas très convivial pour les débutants.
Si vous ne comprenez pas un mot, veuillez effectuer une recherche sur Google. Je suis désolé.
Cependant, je ne veux pas que vous vous inquiétiez de la même manière lorsque je trébuche, alors j'espère que tout le monde fera de son mieux.
Merci d'avoir lu et j'écrirai encore quelque chose.
Recommended Posts