Lorsqu'ils ne sont plus travailler seul pour tous les développeurs vient le temps de trouver des indications dans l'écriture de code. Les protocoles et les normes qui permettent de «lire» facilement et intervenir (plus facilement) dans le code des autres.
Lorsque nous travaillons sur un projet plus programmeurs, souvent des langues différentes, vous devez trouver une forme commune de l'écriture, internes et externes des normes de documentation dans le code. Dans mon travail, je suis généralement d'interagir avec:
- Objet-C, C / C + +
- PHP
- HTML
- JavaScript
- Actionscript
- CSS
Suite ...
J'ai pensé qu'il pourrait être utile à ceux qui ont récemment approché le développement d'applications pour l'iPhone d'Apple, comparez Adobe ActionScript - le langage utilisé dans Adobe Flash et Adobe Flex, plus fréquente chez les néo-programmeurs - et Objective-C de langue utilisé par Apple pour développer ses applications. Objective-C est en effet un langage orienté objet, dans le sens pur, non pas qu'il n'est pas actionscript, mais Objective-C est certainement un plus, car il est une extension du C ANSI et sa syntaxe est un mélange entre le C / C + + et Smalltalk, est une vraie OO (Object-Oriented Language).
Suite ...
A partir d'aujourd'hui a inauguré une nouvelle section (catégorie à être corrigée) dédié au développement d'applications sur l'iPhone d'Apple! Je déclare maintenant que beaucoup des éléments qui va publier un "couper" en ligne avec l'esprit de ce blog, qui sera principalement pour les utilisateurs avancés. Cependant, comme je l'ai fait pour d'autres sujets, je vais essayer d'être aussi clair que possible et, si nécessaire, pour insérer une certaine «concept de base« utile à un large public.
Suite ...
Qui développe sait que l'une des caractéristiques des fonctions ( function () ) est d'avoir ou non des arguments d'entrée. Il peut arriver, parfois, vous devez écrire une fonction qui, basé sur les paramètres d'entrée, se comporte différemment (en programmation OO ce comportement sont considérés comme le polymorphisme). Paramètres variables (varargs), déjà mis en place au moment du présent par défaut dans C et de la déclaration classique de la main :
1
| int main (int argc, char * argv []); |
Suite ...
J'ai fait «revivre» cet article de la mine a écrit un peu "d'années. J'ai légèrement modifié, mettant à jour un petit peu ici et là, mais je pense qu'il est toujours pertinent et intéressant.
INTRODUCTION
Ce qui est un langage de développement? Un ordinateur, PC alias (Personal Computer), a un langage personnel. Ce langage est appelé code machine, signifiant que chaque machine, donc n'importe quel ordinateur (compatible PC, Apple, Unix, etc ...), a un. Uniques et brevetées Les programmes que nous voyons "run" sur nos PC sont principalement menées par l'objet mystérieux appelé un microprocesseur. C'est le cœur, le module intelligent, chaque ordinateur. En fait, une seule application ne fonctionne pas, mais est pris en charge par le microprocesseur, pour ainsi dire, à ce qu'on appelle un système d'exploitation: une couche logicielle fournie par le fabricant de la machine (voir, par exemple, le Macintosh d'Apple).
Suite ...
Il semble évident, mais certains échapper à la différence subtile entre les constantes et les variables dans un langage de programmation. Les constantes, à partir du nom, ne changez pas leur valeur au cours du cycle d'un programme, tandis que les variables peuvent le faire! Souvent, toutefois, arriver à utiliser des variables au lieu de constantes sans s'en rendre compte, aussi parce que ce n'est pas l'impact de la logique d'une application. Malgré cela, la différence entre les constantes et les variables, et il se dégage tout à la compilation, où la constante joue un rôle certainement plus puissant.
En venant de C ou de programmation de l'Assemblée connaît la différence entre les constantes et les variables, en particulier parce que, dans les deux assemblage et C, les constantes jouer un rôle par MACRO. Pour MACRO signifiait dans un "morceau de code" qui est étiqueté et remplacé dans le code à la compilation. Le compilateur, en bref, effectue une sorte de trouver .. remplacer (et est sostituitsci) dans le code chaque fois qu'il rencontre une constante.
Imaginez que vous écrivez en C, la pièce simple suivante de code:
1 2 3 4
| 5 ; int a = 5; 3 ; int b = 3; int c; b ; c = a + b; |
sono indicate come variabili in questo caso. Que ce soit a ce qui b sont présentés comme des variables dans ce cas. En C, en fait, les constantes sont définies avec le mot clé #define . sono state definite come int . Nous constatons immédiatement que a ce qui b a été définie comme int . Déjà là, vous pouvez faire une première optimisation. Si nous savons que notre variable a ne jamais dépasser une certaine valeur, vous devez le déclarer correctement et ne pas utiliser les types de données au hasard. Certains développeurs ne vous embêtez pas à déclarer les types corrects, pensant que cela n'affecte pas la performace! Faux! Alternativement, il est acceptable que le premier projet de code ne comporte pas ce niveau de détail. Cependant, il est une bonne règle, au cours du processus de développement, l'examen du code et de vérifier les types de données.
Toutefois, dans une assemblée de la famille Motorola, par exemple, comme le 68000 mythique, aurait saisir notre code compilé (sans optimisations) en une sorte de:
1 2 3 4
| , d0 ; int a déplacer le # 5, d0; Int. , d1 ; int b bouger. l'# 3, d1, int b d2 ; int c - foo déplacer le D1, D2, int c -. foo l d0 , d2 ; risultato in d2 ovvero c ajouter. d0 l', D2, D2, ou le résultat de c |
ou:
1 2 3
| , d0 ; int a déplacer le # 5, d0; Int. , d1 ; int b bouger. l'# 3, d1, int b d1 ; risultato in d1... bouger. L D0, D1, D1 résultat ... |
Le compilateur, si habiles, l'effort dans les optimisations, puis écrire le code avec le mot-clé droit ne peut contribuer à améliorer la sortie compilée. Dans notre cas, si la valeur 5 est une constante n'est pas pratique d'utiliser une variable entière, car le compilateur, et à juste titre, compte tenu de la variable variable, en fait, une predisponde ensemble facile à contenir la valeur 5, ce qui en binaire est de 101, soit occupe trois bits unique (le cas échéant, int est un 32bit ou 53bit pire une double précision en virgule flottante!). Si l'on avait écrit le code comme ceci:
1 2 3 4 5
| 5 # define MIA_COSTANTE
3 ; int b = 3; int c; b ; c = b + MIA_COSTANTE; |
Le compilateur sache dès le départ que MIA_COSTANTE , étant constant, la valeur ne changera pas donc je peut réserver moins de place pour la traiter. En pratique, le code de diverebbe Assemblée:
1 2 3
| d0 ; la "q" indica una istruzione "quick", cioè che tratta valori compresi tra -128 e +127 moveq # 3, d0; le "Q" indique une déclaration «rapide», qui est des valeurs comprises entre -128 et +127 , Une déclaration «rapide» prend moins de temps CPU (4 cycles d'horloge dans ce cas) d0 ; anche qui uso una istruzione "quick" addq # 5, d0; ici un manuel d'instruction "rapide" |
Ce code est très rapide et prend moins d'octets. Ce que nous devons garder à l'esprit est que lorsque vous déclarez une variable d'environnement se prépare à le traiter comme tel, même si les compilateurs d'aujourd'hui peut faire des miracles, en effectuant une série d'étapes dans le code avant compilation (certains compilateurs, même effectuer une sorte de programme de simulation pour optimiser la compilation en code machine).
Une bonne règle est donc de déclarer le bon type pour nos variables, bien que ces sommes. Sinon, utiliser les constantes, surtout si le langage de programmation, nous utilisons les attendus (comme dans le cas de la nouvelle Flash CS3).
Suite ...
Derniers Commentaires
Mark : Je vous remercie beaucoup, j'ai allumé
J'ai résolu en réglant [cc_objc] / / OptionViewController.m -...
Giovambattista Fazioli : @ Marc: je vous suggère de penser approche plus correcte. Si vous avez exécuté la sous-classe de l'onglet ...
Mark : Excusez du spam .. J'ai remarqué qu'il ya une erreur .. voici la correction [cc_objc] / ** PrimaClasse.h ** / # import ...
Mark : J'ai oublié .. dans [CCI] DptionViewController [/ cci] sur [CCI] @ syntetize [/ cci] J'ai mis le délégué
louis : très claire et simple, je dois admettre que la rédaction d'un Bang peine utiliser des délégués créé par ...