Achèvement du développement de l'applet de l'annuaire téléphonique et des réflexions

高洛峰
Libérer: 2017-02-11 10:42:15
original
1862 Les gens l'ont consulté

Cette semaine, j'ai passé quelques jours pendant mon temps libre à développer un petit programme d'annuaire téléphonique.

Bien que le programme soit petit, simple et laid, il s'agit bien de la première application complète et utilisable développée par moi. La conception, le codage, les tests simples et enfin le package d'installation sont tous réalisés par une seule personne. Bien que j'aie écrit beaucoup de code C# et Java (des dizaines de milliers de lignes) et d'innombrables gadgets C et C dans le passé, soit je n'ai terminé qu'une petite partie d'un grand projet, soit ce n'est pas intéressant "Bonjour tout le monde. !" teste la faisabilité de l'algorithme.

Informations de base du programme :

Outils de développement : VS2010 ;

Large Small : package d'installation 500k ;

Code valide : environ 500 lignes ;

Architecture : Profil client .NET 4.0 ;

Principales technologies : Lecture et écriture XML, production d'interface WPF ;

Temps de développement : moins de 20 heures, estimé à 15 heures Reste et à droite ;

Voici quelques captures d'écran :

Connexion

Achèvement du développement de lapplet de lannuaire téléphonique et des réflexions

Configuration personnelle et inscription

Achèvement du développement de lapplet de lannuaire téléphonique et des réflexions

Interface principale

Achèvement du développement de lapplet de lannuaire téléphonique et des réflexions

Bien qu'il s'agisse d'un petit programme, j'ai résumé quelques expériences, notez-les, peut-être qu'elles seront utilisées à l'avenir.

1. Assurez-vous d’éviter d’être avide de plus et de chercher plus que ce que vous pouvez manger. La dernière bataille de chars a été avortée pour cette raison. Je voulais avoir une interface éblouissante, une nouvelle structure et utiliser de nouvelles technologies qui n'avaient jamais été réalisées auparavant, mais le résultat était une impasse. Cette fois, je l'ai gardé à l'esprit, j'ai simplifié les fonctions autant que possible, j'ai rendu l'interface aussi simple que possible, et j'ai finalement obtenu les bons résultats.

2. Effectuez d'abord des tests techniques, puis procédez au développement réel. Pour ce programme, j'ai écrit trois ou quatre petits programmes pour tester si les technologies et les idées clés sont réalisables, puis procédez au développement une fois terminé.

3. Développer en couches et en blocs, et enfin assembler. Assurer l’indépendance entre chaque couche facilite non seulement le développement mais facilite également la maintenance et les mises à niveau futures. La séparation de la logique des données et de l'interface permet d'apporter des améliorations distinctes à l'interface ou à la logique sous-jacente à l'avenir. Lors du développement de l'interface de niveau supérieur, une classe TestData est utilisée, qui utilise une série de méthodes statiques pour fournir les fausses données requises par l'interface. Un programme console a été utilisé lors du développement de la couche inférieure. Attendez que les deux soient presque identiques avant de les assembler.

4. Donnez la priorité à l'exécution et efforcez-vous d'affiner étape par étape. Au début, l'interface n'était constituée que de quelques boutons tordus avec le nom de l'interface écrit au milieu de l'interface. Il n'y a que deux résultats en cliquant sur le bouton, soit en accédant à une autre interface, soit en faisant apparaître une boîte de message pour afficher le nom du bouton. Écrivez d'abord toutes les fonctions et ne vous précipitez pas pour les implémenter. Renvoyez null ou une instance de données nouvelles ou fausses extraites des données de test. Après l'exécution, implémentez-les une par une. L'interface s'enrichit petit à petit, et enfin il y a ces choses insignifiantes comme l'ajustement de la position et de la taille.

5. J'ai créé une application mais je n'ai pas pu obtenir le package d'installation. Plus tard, j'ai réinstallé VS et découvert que le package d'installation était complet et profond, comme le cryptage, la surveillance de l'environnement d'installation, l'installation définie par l'utilisateur et Ah, sélection du répertoire d'installation, vérification pré-installation, compression des données, suivi de la progression de l'installation, détection de réparation ou désinstallation des versions précédentes...

6. L'écriture d'un programme est une itération, pour toujours S'il n'y parvient pas. atteindre une vraie valeur, cela ne peut s'arrêter que lorsque les résultats des deux itérations diffèrent d'un montant suffisamment petit Ceci est considéré comme une solution

À propos des améliorations futures (peut-être beaucoup plus tard) Des choses sont arrivées) :

1. L'accès aux données peut être amélioré, vous pouvez envisager d'utiliser le type IQueryable pour la réutilisation

2. L'interface doit être améliorée

3 ; . Le rôle du contrôleur doit être amélioré, supprimer BL et le remplacer par plusieurs usines

4. Les enregistrements ne peuvent pas être regroupés

5. Problèmes de gestion des exceptions

6. L'accès aux données peut être isolé en utilisant une excuse courante. IDataAccess, l'usine appelle uniquement l'interface et n'appelle pas la classe d'accès aux données, ce qui facilite l'expansion de l'accès aux données à une variété de méthodes de stockage différentes

7. Importer. et exporter

C'est tout pour l'instant, d'autres seront ajoutés le moment venu.

Pour plus d'articles liés à l'achèvement du développement et aux réflexions de l'applet de l'annuaire téléphonique, veuillez faire attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal