Maison >Problème commun >Que devez-vous apprendre sur le développement de logiciels ?
Que devez-vous apprendre pour faire du développement logiciel ? Aujourd'hui, l'éditeur a compilé pour vous ce qui suit
Ce que vous devez apprendre pour faire du développement logiciel :
1. Données de base et leur conversion, représentation sur machine des données, opérations arithmétiques et logiques et connaissances de base associées en mathématiques appliquées
2. indicateurs de chaque composante principale ;
3. Maîtriser les connaissances de base des systèmes d'exploitation et des langages de programmation ;
4. Maîtriser les méthodes de fonctionnement de base des logiciels de bureautique couramment utilisés ; 🎜>5. Maîtrise des structures de données de base et des algorithmes couramment utilisés ;
6. Maîtrise du langage de programmation C++, Java et Visual Basic ;
7. . Familier avec les connaissances de base des bases de données, des réseaux et du multimédia ;
8. Maîtriser les connaissances de base du génie logiciel, comprendre les connaissances de base des processus logiciels et le bon sens de la gestion de projets de développement logiciel ;
9. Comprendre les normes courantes en matière de technologie de l'information, la sécurité et les connaissances de base des lois et réglementations pertinentes ;
10 Comprendre les connaissances de base de l'informatisation et des applications informatiques
11. matériel d'anglais simple dans le domaine informatique.
Compétences nécessaires pour les programmeurs :
1. Maîtrise des outils de développement
En tant que programmeur, vous devez maîtriser l'utilisation d'au moins deux à trois outils de développement. est un programme Parmi eux, C/C++ et JAVA sont les outils de développement les plus recommandés. C/C++ est devenu un outil puissant parmi les outils de développement en raison de sa grande efficacité et de sa grande flexibilité. De nombreux logiciels au niveau système sont encore écrits en C/C++. .
La multiplateforme de JAVA et sa bonne intégration avec le WEB sont les avantages de JAVA, et JAVA, son ensemble technologique connexe JAVAOne, est susceptible de devenir l'un des outils de développement grand public à l'avenir.
Deuxièmement, il serait préférable de maîtriser un outil de développement visuel simple, tel que VB, PowerBuilder, Delphi, CBuilder. Ces outils de développement réduisent la difficulté de développement et peuvent renforcer le concept de modèle objet du programmeur.
De plus, vous devez maîtriser les langages de script de base, tels que Shell, Perl, etc., et au moins être capable de lire ces codes de script.
2. Familiers des bases de données
En tant que programmeurs, ils ont naturellement leurs propres raisons : de nombreuses applications sont centrées sur les données de bases de données, et il existe de nombreux produits de bases de données, parmi lesquels les bases de données relationnelles sont toujours les plus répandues. forme, les programmeurs doivent donc maîtriser au moins une ou deux bases de données, être très clairs sur les éléments clés des bases de données relationnelles et maîtriser la syntaxe de base de SQL.
Bien que de nombreux produits de bases de données fournissent des outils de gestion visuelle de bases de données, SQL constitue la base et la méthode universelle de fonctionnement des bases de données. Si vous n'avez pas accès aux systèmes de bases de données commerciaux, c'est un bon choix d'utiliser des produits de bases de données gratuits, tels que MySQL, Postgres, etc.
3. Comprendre le système d'exploitation
Les systèmes d'exploitation courants actuels sont Windows et Linux/Unix. Il est nécessaire de maîtriser l'utilisation de ces systèmes d'exploitation, mais ceux-ci ne suffisent pas.
Pour devenir un véritable maître de la programmation, vous devez avoir une compréhension approfondie du système d'exploitation, de son mécanisme de gestion de la mémoire, de la planification des processus/threads, des signaux, des objets du noyau, des appels système, de l'implémentation de la pile de protocoles, etc. .
Linux, en tant que système d'exploitation pour développer du code source, est une bonne plateforme d'apprentissage. Linux possède presque toutes les caractéristiques des systèmes d'exploitation modernes. Bien qu'il existe moins d'informations sur le mécanisme d'implémentation du noyau des systèmes Windows, de nombreuses informations peuvent encore être obtenues via Internet. Comprendre le protocole réseau TCP/IP.
Aujourd'hui, alors qu'Internet est si populaire, si vous ne maîtrisez pas la pile de protocoles TCP/IP, le protocole de support d'Internet, vous devez rapidement rattraper cette leçon. La technologie réseau a changé la voie. le logiciel s'exécute.
De la première structure client/serveur aux WEBServices d'aujourd'hui, en passant par le futur calcul en grille, tout cela est indissociable de la prise en charge du protocole réseau basé sur la pile de protocoles TCP/IP. le protocole est très nécessaire.
Au moins, vous devez comprendre le modèle de protocole ISO à sept couches, les principes des protocoles courants tels que IP/UDP/TCP/HTTP et le mécanisme de prise de contact à trois voies.
4. Comprendre l'importance de l'existence de DCOM/CORBA/XML/WEBServices
Avec le développement de la technologie, l'intégration transparente des logiciels et du réseau est une tendance inévitable, et l'indépendance de l'emplacement des systèmes logiciels est l'avenir L'une des caractéristiques importantes du modèle informatique est que DCOM/CORBA est une plate-forme intermédiaire pour les deux systèmes informatiques distribués actuels. DCOM est une extension de Microsoft COM (Component Object Model) et CORBA est une spécification. soutenu par OMG.
L'importance de XML/WebServices est évidente. XML est connu sous le nom de « espéranto » sur Internet pour sa méthode de représentation structurée et sa capacité super expressive, et est l'une des pierres angulaires de l'informatique distribuée.
5. Ne séparez pas l'ingénierie logicielle du CMM
Dans le développement de systèmes logiciels à grande échelle, le contrôle du développement technique remplace l'héroïsme personnel et devient la garantie du succès du système logiciel. Un maître en programmation ne doit pas nécessairement être un excellent programmeur.
Un excellent programmeur combine d'excellentes capacités de programmation et de développement avec une réflexion stricte en matière d'ingénierie logicielle. La programmation n'est qu'une partie du cycle de vie d'un logiciel.
Tels que l'analyse de marché, l'analyse de faisabilité, l'analyse de la demande, la conception structurelle, la conception détaillée, les tests de logiciels, etc.
6. Capacité de compréhension des exigences
Les programmeurs doivent être capables de comprendre correctement les exigences décrites dans l'ordre des tâches. Il doit être clair ici que les programmeurs doivent non seulement prêter attention aux exigences fonctionnelles du logiciel, mais également aux exigences de performances du logiciel.
Vous devez être capable d'évaluer correctement l'impact et les menaces potentielles de vos propres modules sur l'ensemble du projet. Si un programmeur qualifié avec deux à trois ans d'expérience en projet ne comprend pas cela, cela ne peut que signifier qu'il. c’est peut-être sérieux. J’ai travaillé, mais je n’ai pas travaillé dur.
7. Capacité de réflexion modulaire
En tant qu'excellent programmeur, sa réflexion ne peut pas se limiter aux tâches de travail actuelles. Il doit se demander si les modules qu'il écrit peuvent être séparés du système actuel. Il existe et peut être utilisé directement dans d’autres systèmes ou d’autres modules grâce à une simple encapsulation.
Faire cela peut rendre le code réutilisable, réduire la duplication du travail et rendre la structure du système plus raisonnable. L'amélioration de la capacité de réflexion modulaire est un indicateur important de l'amélioration du niveau technique d'un programmeur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!