[Swift] Carte de compétences de inexpérimenté à pratique (carte routière)

** De nombreux débutants utilisent trop d'intrants **

J'étais le même "Combien d'études devrais-je mettre en pratique?" "Que dois-je étudier?" Je ne comprends pas bien, je touche plusieurs langues (2 chiffres) peu profondément, J'ai perdu beaucoup de temps, donc pour d'autres personnes inexpérimentées Je voudrais laisser une feuille de route ici pour que cela ne se produise pas.

En programmation, si vous essayez de tout couvrir, il n'y a pas de fin, donc Je me concentre sur ce que j'utilise au moins dans la pratique et ce que j'utilise beaucoup.

Aussi, parce que la compétence doit être prouvée, Vous devez créer une application profonde.

Carte des compétences

Syntaxe de base Pour commencer une nouvelle chose, vous devez d'abord connaître la langue et la grammaire minimales Voici la liste de contrôle.

** Niveau 1 **: la pratique est difficile

·Calcul(+, -, *, /, %)
・ Qu'est-ce qu'une instance?
・ Qu'est-ce qu'une propriété?
・ Qu'est-ce qu'une méthode?
・ Opérateur de comparaison(==, !=)
・ Var variable
・ Laisser constante
・ Traitement d'échappement "\()」
・ Si déclaration
・ Déclaration de commutation
・ Pour déclaration
・ Structure: struct
・ Fonction func
・ Type de fonte

** Niveau 2 **: Si vous en touchez quelques-uns, vous pourriez arriver quelque part

・ Inférence de type
・ Comprendre facultatif
・ Si vous laissez
・ Chaîne en option
・ Les images peuvent être utilisées
・ Storyboard/Dessin par codage
 View、TableView、CollectionView、Switch、SegmentedControl
Implémentation de cellule personnalisée dans TableView et CollectionView,
Autres pièces diverses
· Transition d'écran(segue, navigationController,etc)
・ Passer par référence,Passer par valeur
・ Alerte UIAlertController,UIAlertAction
・ SVProgress HUD peut être utilisé au bon moment
・ NavigationController peut être utilisé

** Niveau 3 **: Si vous en touchez quelques-uns, vous pourriez arriver quelque part

・ UIView.L'animation peut être mise en œuvre avec animate
 ->Il est bon d'être conscient du cycle de vie
Si vous pouvez le faire, l'interface utilisateur sera polie, il est donc bon de sélectionner
・ Vous pouvez voir la réutilisation des cellules et les faire fonctionner correctement.
 ->Sans comprendre la réutilisation(Surtout l'initialisation), Les effets secondaires ont tendance à se produire
・ Sachez quand vous n'en avez pas besoin lorsque vous vous ajoutez

** Niveau 4 **: Probabilité croissante d'entrer

・ Traitement asynchrone(Utiliser l'API Web)->Utiliser DispatchQueue ou Closure
 (Ce serait bien si la fermeture pouvait être utilisée ici)
·Bibliothèque(Installer et utiliser des fichiers externes avec les Cocoapods)
Les graphiques, FSCalendar, SwiftyJSON, etc. semblent bons
・ Le délégué peut être mis à profit
・ Le centre de notification peut être utilisé
・ Github peut être utilisé
・ SourceTree peut être utilisé

Les articles suivants sont les plus faciles à comprendre pour Delegate https://qiita.com/Sossiii/items/6c8916f96176991f19aa

** Niveau 5 **: l'auto-apprentissage n'est plus efficace, alors mettez-vous en pratique maintenant

・ Firestore et Realm Swift peuvent être utilisés
En mettant les informations enregistrées sur le serveur dans la base de données locale,
Vous n'avez pas à extraire plusieurs fois des données du Firestore(La communication est réduite)
Realm Swift enregistre en mémoire, donc la tâche tue, efface les données et ne gonfle pas
・ Le chat peut être implémenté
Bibliothèque-> MessageKit
・ Certaines interfaces utilisateur peuvent être conçues
Googler sur Pinterest

Pinterest(https://tinyurl.com/yyjaansd)

** Niveau 6 **: Force immédiate

・ RxSwift,Alamofire、SwiftyJSON、Moya, RxCocoa, RxDataSources
Vous pouvez coder en fonction de l'architecture MVVM à l'aide de bibliothèques telles que
・ Comprendre le code et le code existants sans le casser(Entretien)

** Niveau X **: peut-être le plus important

・ Puissance gourmande
・ Résolution automatique de certaines erreurs
・ J'ai abandonné le problème difficile et j'ai dit: «Je ne savais pas ce que je faisais, j'ai cherché, mais je ne l'ai pas compris.
Vous pouvez poser des questions sous la forme "Je veux savoir ce genre de chose"
・ Vous pouvez étudier activement par vous-même
・ J'aime la programmation

Enfin créer un portfolio

Si vous parvenez à atteindre le niveau que vous avez décidé Il est maintenant temps de créer une application d'insistance et de procéder à l'entretien.

Le portefeuille est insisté

Parfois, les gens disent qu'ils n'ont pas besoin d'un portfolio, Je suis un choix "nécessaire" Le moyen le plus simple d'embaucher une personne inexpérimentée avec un niveau de compétence inconnu Puisque l'indice est "portefeuille" C'est presque toujours nécessaire.

Cependant, nous disposons de solides ressources pédagogiques et nous nous concentrons sur la formation de personnes inexpérimentées. Si vous êtes une entreprise, il y a des endroits où vous pouvez entrer même si vous êtes vide.

Par conséquent, ce n'est pas un portefeuille large et peu profond, Quoi qu'il en soit, il est recommandé de créer une application qui soit ** étroite et profonde ** consciente.

De la conception de contenu (UX) à la conception (UI) Si vous incluez la technologie jusqu'au niveau 4 et 5, Tout ce que vous avez à faire est de postuler

Si vous vous préparez à la sélection du codage

Choix de Paiza (https://paiza.jp/challenges)

Ce qui est important autre que la compétence

Lorsqu'on me demande si je n'ai besoin que de compétences, c'est en fait non. Plus précisément, nous avons besoin d'un axe en tant que personne. "Pourquoi veux-tu être ingénieur?" "Pourquoi étudies-tu?" "Quel type de personne es-tu?" "Pouvez-vous continuer comme si vous étiez en affaires?" "Qu'est-ce que tu aimes?" Lorsqu'une réponse claire sort à cette question, Je pense qu'il n'y a pas de problème particulier dans l'entrevue.

Répondez aux besoins de votre entreprise!

"** Je suis une telle personne! Veuillez accepter! **" "Quoi? Les entreprises ne sont pas des parents." L'entreprise est un lieu pour obtenir des résultats Ce n'est pas un endroit pour vous former. Il vous forme pour les résultats et travaille pour les ventes.

Si vous souhaitez augmenter la probabilité de réussir la sélection, saisissez les besoins de l'entreprise Il est très important de le faire correspondre. ・ Quels types de compétences êtes-vous les bienvenus? ・ Quel type de vision a l'entreprise? ・ Quel type de ressources humaines souhaitez-vous? Il vaut mieux le comprendre et l'intégrer dans votre portfolio et vos entretiens.

en conclusion

Personnellement, je souhaite postuler aux niveaux 4 et 5. Je suis heureux que vous puissiez l'utiliser comme référence. Aussi, ** j'étudie depuis des mois, mais je ne peux pas du tout le faire! ** ** Bonne nouvelle pour ceux qui le disent, mais c'est rapide si vous arrivez à la ligne de départ en un an. La frustration est un catalyseur de croissance et chaque fois que vous la surmontez, vous faites un pas à la fois. La différence avec la personne qui ne fait rien s'ouvrira.

Recommended Posts

[Swift] Carte de compétences de inexpérimenté à pratique (carte routière)
Comment appeler le code Swift 5.3 depuis Objective-C
[Pour les débutants] Feuille de route complète pour l'apprentissage de la programmation WEB [De l'achat d'un MacBook au niveau pratique]
Conversion du pointeur de chaîne de langage C en type Swift String
[Swift, ARKit] Migrer de hitTest obsolète vers raycastQuery
[Swift] Comment lire des chansons de la bibliothèque musicale
Enregistrement au DMM WEB CAMP (de inexpérimenté à l'emploi)
Générer des modèles de JSON à Swift, PHP, C #, JAVA