[PYTHON] Ce que les non-programmeurs et les débutants en développement d'applications Web devraient faire pour effacer les didacticiels GeoDjango à une vitesse explosive

Ceci est l'article du 24ème jour du Calendrier de l'Avent FOSS4G 2019.

Introduction (conclusion)

Ce que les non-programmeurs et les débutants en développement d'applications Web devraient faire pour effacer le didacticiel GeoDjango (Informations géospatiales commençant par GeoDjango)
  1. Reconnaissez que le développement d'applications Web est un apprentissage cumulatif.
  2. Parcourez le Tutoriel DjangoGirls pour avoir un aperçu de la construction du site Web et de Django.
  3. Créer une application Web basée sur la localisation avec Django et GeoDjango Apprenez à utiliser PostgreSQL avec DOCKER. Le niveau de difficulté est faible car vous n'êtes pas obligé d'implémenter l'API RESTful.
  4. Tutoriel GeoDjango: Continuez avec les informations géospatiales basées sur GeoDjango à une vitesse explosive en lisant cet article.

Introduction (introduction)

Il existe de nombreux blogs techniques avec des titres tels que «Pour les débutants» et «Introduction», mais j'ai souvent le sentiment que beaucoup d'entre eux sont écrits pour «des gens qui savent dans une certaine mesure». C'est comme une personne qui connaît la technologie organise et écrit des informations sous forme de critique, mais il y a aussi des articles épuisés en cours de route et des mémos que vous devriez connaître vous-même. Je pense qu'il est inévitable que les personnes qui ne comprennent pas ne puissent pas comprendre «je ne comprends pas», mais même dans les articles supposant des débutants, «naturellement en tant qu'ingénieur» et «les réglages nécessaires pour utiliser le système» sont clairement énoncés. Je ne le mentionne souvent pas, et pour les débutants, il y a beaucoup de situations où ** "je ne peux pas faire ce qu'on m'a dit !!!!" **.

Mon travail principal est un non-programmeur d'un consultant en construction, et avant moi, un ** débutant complet lié au web ** qui a eu l'idée de "Je veux faire une application en utilisant GeoDjango", cette capacité à lire la branche omise a été omise. La capacité à effectuer des travaux se distinguait par un haut mur.

Objectif

Sur la base de cette expérience, cet article vise à fournir du matériel pédagogique supplémentaire pour les tutoriels GeoDjango pour les débutants et les non-programmeurs en développement d'applications Web.

Tutoriel pour travailler

Informations sur l'espace géographique commençant par GeoDjango (par Hiroshi Omata)

Environnement de développement

macOS version 10.15.1

Entraine toi! !!

0. Soyez prêt pour la programmation

Je ne pense pas que ce soit familier aux non-programmeurs, car cela n'a pas l'opportunité d'être considéré comme des attitudes «naturelles» pour les programmeurs et des informations organisées de manière inattendue. Voici quelques-unes des attitudes que j'ai été reconnaissantes d'avoir appris par une connaissance du programmeur.

** _ "Voir la documentation officielle ainsi que le blog technique" _ ** Apprendre un langage informatique équivaut à apprendre une nouvelle langue et il est important d'avoir une solide compréhension de la grammaire. Il est très important d'avoir le temps de revenir aux bases et de lire la documentation officielle. ** _ "Lisez correctement l'instruction d'erreur avant de rechercher" _ ** J'ai eu une erreur et c'est devenu "bouillonnant", et j'ai demandé au professeur de Google sans lire la déclaration d'erreur, ce qui a perdu du temps. En Python, la cause de l'erreur est correctement écrite à la fin de l'instruction d'erreur. Calmez-vous et lisez la déclaration d'erreur. ** _ "La plupart des problèmes que vous rencontrez sont des problèmes que quelqu'un a déjà rencontrés" _ ** Si vous avez un problème, avant de demander à quelqu'un, recherchez quelqu'un qui a le même problème sur divers blogs techniques tels que Qiita ou StackOverFlow. Il y a beaucoup plus de sources anglaises que de sources japonaises, et un anglais audacieux est un raccourci pour résoudre des problèmes. ** _ "C'est justice que le script fonctionne. C'est justice qu'il puisse servir son but." _ ** En lisant un fichier CSV en tant que dataframe, je savais que l'utilisation de pandas le ferait en un instant, mais il fut un temps où je me demandais si je pouvais faire quelque chose avec np.loadtxt de numpy. Quant à mes sentiments, je souffrais de la "maladie que je veux faire après avoir tout fini" qui est commune aux débutants qui disent "je ne peux pas le faire parce que je ne comprends pas numpy, je dois le maîtriser correctement ...". Quand j'ai consulté le programmeur de mon ami, il a été renvoyé pour avoir dit: "Donnez la priorité à cet objectif. C'est une perte de temps, donc les pandas vont bien." Nous ne sommes pas dans le test. Il existe un code intelligent, mais il n'y a pas de bonne réponse, et vous ne devriez pas vous méprendre sur la priorité absolue de «réaliser le but que vous essayez d'atteindre».

1. Pré-apprentissage

1-1. Apprenez le fonctionnement de base de Django

Le [tutoriel Django] original (https://docs.djangoproject.com/ja/3.0/intro/tutorial01// "Créez votre première application Django") est difficile pour les débutants, donc [Tutoriel Django Girls](https: // tutoriel. Apprenez les bases de Django sur djangogirls.org/en/ "DjangoGirlsTutrial"). Il couvre les opérations de ligne de commande minimales nécessaires, la grammaire de base HTML, CSS et Python requise pour faire fonctionner Django, il n'est donc pas nécessaire d'apprendre les techniques élémentaires individuellement. Cependant, comme il s'agit du minimum nécessaire, la méthode d'étude lorsque vous souhaitez approfondir individuellement ces technologies élémentaires est résumée dans [Bas](Connaissances de base sur #web et acquisition de la grammaire de base python).

Il y a plusieurs fichiers qui s'influencent mutuellement dans un répertoire avec plusieurs couches, donc quel type de flux les données sont traitées, quel ordre doit être édité, ... je faisais

"Si vous ajoutez une autre page de modèle (apparence), Ajouter que le nombre de pages a augmenté en urls, Ajouter que le nombre de pages a augmenté dans View C'est nécessaire. " Source: [[Python / Django] 6 conseils pour utiliser des frameworks Web pour créer des applications dans la plus courte distance [pour les débutants]](http://coinbaby8.com/python-django-framework-6-idea.html // "Programmation MonPro pour la recherche et la résolution de problèmes")

La compréhension a progressé depuis que j'ai pris conscience du flux d'un «ensemble unique».

1-2. Apprenez à utiliser PostgreSQL avec DOCKER

Le didacticiel DjangoGirls (https://tutorial.djangogirls.org/en/ "DjangoGirlsTutrial") utilise la base de données par défaut (SQLite), mais GeoDjango doit changer cela en PostgreSQL. Dans Informations géospatiales commençant par GeoDjango, utilisez la commande $ createdb pour postGIS, qui est une extension d'informations de localisation PostgreSQL. Je crée une base de données de, mais si cela ne fonctionne pas, je dois utiliser DOCKER. Créer et démarrer une base de données à l'aide de DOCKER est [Créer une application Web basée sur l'emplacement avec Django et GeoDjango](https://realpython.com/location-based-app-with-geodjango-tutorial/ "Créer une application Web basée sur l'emplacement" Il est détaillé (en anglais) dans l'application Web avec Django et GeoDjango "). Au contraire, la méthode d'installation utilisant Homebrew des quatre outils périphériques (GDAL, GEOS, PROJ4, PostgresSQL) requis pour GeoDjango n'est pas présentée sur ce site, donc [Informations géographiques commençant par GeoDjango: Installation préparatoire]( Vous devez vous référer à https://homata.gitbook.io/geodjango/qian-zhun-bei/install#mac-osx-1 / "Mac (OSX)") pour installer Homebrew et installer les outils. Il s'agit de l'installation de Xcode nécessaire lors de l'installation de Homebrew, mais comme un problème est survenu lors de l'installation depuis l'Appstore, [cet article](https://qiita.com/NolikaOhkawa/items/1bc2960f513d3d6a8882 / "Installer Xcode sur Mac" Je l'ai installé directement à partir du fichier .dmg, en référence à ").

2. Tutoriel GeoDjango

Avec ce solide pré-apprentissage, vous devriez pouvoir effacer le tutoriel GeoDjango: Informations GéoSpatiales à partir de GeoDjango à une vitesse explosive.

Au fur et à mesure que je poursuivais le didacticiel en faisant référence à plusieurs sites, j'étais souvent confus par la différence de notation du code. La notation diffère selon la personne / le site,

python


Lequel montre le mémo
(env) $Lequel montre la description dans le terminal
Lequel montre le résultat de l'exécution sur le terminal

De quelle partie est l'éditeur
Cela indique-t-il un script à éditer?

Il m'a fallu un certain temps pour comprendre. Par exemple, pour le code affiché dans "Création d'une API RESTful" (https://homata.gitbook.io/geodjango/geodjango/tutorial#restful-apino/ "Tutoriel GeoDjango: Création d'une API RESTful") Si (env) $ arrive au début de la phrase, vous pouvez dire qu'il est écrit dans le terminal, mais vous devez lire le contexte si la partie sol est le résultat de l'exécution du terminal ou le code dans le fichier. Ce domaine est "naturel pour ceux qui comprennent", mais je pense qu'il faudra un certain temps aux débutants pour s'y habituer. Image 24-12-19 at 2.52 am.JPG Image 24-12-19 at 2.56 am.JPG

Résumé

Afin de développer des applications à une vitesse explosive, il est devenu une ligne de force non couverte que l'apprentissage cumulatif pour acquérir des connaissances est indispensable. Dans cet apprentissage, il est important d'avoir quelqu'un qui puisse apprendre et consulter à nouveau quelqu'un, ayant l'expérience qu'il est difficile de trouver des ressources qui peuvent atteindre l'endroit qui démange et que de nombreux indices de la solution proviennent de la bouche humaine. J'ai réalisé que.

Information supplémentaire

Acquisition de connaissances de base sur le WEB et la grammaire de base de Python

Pour utiliser Django, vous devez avoir une connaissance de base de la construction de sites Web, et vous devez connaître la grammaire de base de Python, les débutants doivent donc prendre les matériaux suivants un par un. Vous n'avez pas besoin de passer beaucoup de temps pour apprendre le concept, du moment que vous pouvez le comprendre. __ 1000 yens par mois Concentrons-nous et terminons dans un court laps de temps après avoir payé un peu. __ Des textes disponibles dans le commerce peuvent être utilisés, mais je recommande personnellement Dot Install Progate. J'ai peut-être utilisé cela, mais la raison principale est que je pense que ces deux sites sont des services de soutien à l'apprentissage consciencieux qui ne font pas de publicité en utilisant des mots tels que «changement d'emploi» et «emploi». est.

Pour l'installation par points

Introduction aux commandes UNIX → [Création d'un environnement de développement HTML / CSS](https://dotinstall.com/lessons/ basic_pcsetup_mac_v2 / "Préparer l'environnement d'apprentissage pour HTML / CSS [macOS]") → Introduction au HTML → [Introduction au CSS](https :: //dotinstall.com/lessons/basic_css_v5/ "Premier CSS") → Introduction à Python 3

Pour Progate

Principes de base de la ligne de commande → [HTML et CSS](https://prog-8.com/languages/ html / "Langage d'apparence de page Web HTML & CSS") (Niveau débutant / intermédiaire suffit) → Introduction à Python

Recommended Posts

Ce que les non-programmeurs et les débutants en développement d'applications Web devraient faire pour effacer les didacticiels GeoDjango à une vitesse explosive
Convertissez instantanément le modèle en dictionnaire avec Django et initialisez Form à une vitesse explosive