Bonjour,
je débute dans la progr C.
Mais j'ai trouvé des allusion à l'objective C.
Malheureusement, le groupe de news n'existe pas en français.
Qqn peut-il me donner son opinion sur sa pratique de ce langage, et,si
possible, une url de doc <feignant!>en français</feignant!et alors?>
Merci.
| > | | La différence est que le compilateur Objective C et les | > librairies | > | GNUStep étant sous GPL, je peux développer des logiciels en | > | Objective-C | > | pour une autre plateforme que MacOS, et sans utiliser d'outils Apple, | > | que je peux utiliser des implémentations de l'API OpenStep sur | > | d'autres plateformes que MacOS sans devoir utiliser de produits Apple | > | ou payer de licence à Apple, et que je peux même utiliser le langage | > | Objective-C | > | indépendament de l'API OpenStep. | > Mais cela n'a rien à avoir avec le fait que Objective C soit la | > propriété de Apple ou non. | | Je répondais à la question "quelle différence pratique cela fait ?", | et dans la pratique, l'existence d'une implémentation libre d'un | langage me semble faire une grande différence, par rapport à la notion | de langage 'propriétaire' à la VB.
Cela n'était pas le sujet de dicsussion qui a amené on commentaire. Voici ce de quoi il s'agit
# > C'est un langage d'Apple (anciennement un langage NextStep). # # Objective C n'appartient pas à Apple. PCQJS, il n'appartient à # personne... A preuve, gcc a un compilo Objective C.
Le fait de disposer d'une implémentation alternative n'implique en rien le fait que le langage ne soit pas la propriété d'une société donnée. PostScript dispose d'implémentations alternatives. Il reste néanmoins la propriété de Adobe System.
-- Gaby
Bruno Desthuilliers <bdesth.nospam@removeme.free.fr> writes:
| > | | La différence est que le compilateur Objective C et les
| > librairies
| > | GNUStep étant sous GPL, je peux développer des logiciels en
| > | Objective-C
| > | pour une autre plateforme que MacOS, et sans utiliser d'outils Apple,
| > | que je peux utiliser des implémentations de l'API OpenStep sur
| > | d'autres plateformes que MacOS sans devoir utiliser de produits Apple
| > | ou payer de licence à Apple, et que je peux même utiliser le langage
| > | Objective-C
| > | indépendament de l'API OpenStep.
| > Mais cela n'a rien à avoir avec le fait que Objective C soit la
| > propriété de Apple ou non.
|
| Je répondais à la question "quelle différence pratique cela fait ?",
| et dans la pratique, l'existence d'une implémentation libre d'un
| langage me semble faire une grande différence, par rapport à la notion
| de langage 'propriétaire' à la VB.
Cela n'était pas le sujet de dicsussion qui a amené on commentaire.
Voici ce de quoi il s'agit
# > C'est un langage d'Apple (anciennement un langage NextStep).
#
# Objective C n'appartient pas à Apple. PCQJS, il n'appartient à
# personne... A preuve, gcc a un compilo Objective C.
Le fait de disposer d'une implémentation alternative n'implique en
rien le fait que le langage ne soit pas la propriété d'une société
donnée.
PostScript dispose d'implémentations alternatives. Il reste néanmoins
la propriété de Adobe System.
| > | | La différence est que le compilateur Objective C et les | > librairies | > | GNUStep étant sous GPL, je peux développer des logiciels en | > | Objective-C | > | pour une autre plateforme que MacOS, et sans utiliser d'outils Apple, | > | que je peux utiliser des implémentations de l'API OpenStep sur | > | d'autres plateformes que MacOS sans devoir utiliser de produits Apple | > | ou payer de licence à Apple, et que je peux même utiliser le langage | > | Objective-C | > | indépendament de l'API OpenStep. | > Mais cela n'a rien à avoir avec le fait que Objective C soit la | > propriété de Apple ou non. | | Je répondais à la question "quelle différence pratique cela fait ?", | et dans la pratique, l'existence d'une implémentation libre d'un | langage me semble faire une grande différence, par rapport à la notion | de langage 'propriétaire' à la VB.
Cela n'était pas le sujet de dicsussion qui a amené on commentaire. Voici ce de quoi il s'agit
# > C'est un langage d'Apple (anciennement un langage NextStep). # # Objective C n'appartient pas à Apple. PCQJS, il n'appartient à # personne... A preuve, gcc a un compilo Objective C.
Le fait de disposer d'une implémentation alternative n'implique en rien le fait que le langage ne soit pas la propriété d'une société donnée. PostScript dispose d'implémentations alternatives. Il reste néanmoins la propriété de Adobe System.
-- Gaby
Bruno Desthuilliers
anaxagore wrote:
Merci, je n'ai pas de Mac, mais je profiterai du lien pour l'anglais!
Et voilà... C'est pour ça que je réagissais à la réponse de Richard.
Bon, rappel des titres pour l'OP : Objective C est disponible, dans une implémentation libre, pour d'autres plateformes que MacOS. Et le langage est utilisable indépendemment de l'API OpenStep.
Bruno
anaxagore wrote:
Merci, je n'ai pas de Mac, mais je profiterai du lien pour l'anglais!
Et voilà... C'est pour ça que je réagissais à la réponse de Richard.
Bon, rappel des titres pour l'OP : Objective C est disponible, dans une
implémentation libre, pour d'autres plateformes que MacOS. Et le langage
est utilisable indépendemment de l'API OpenStep.
Merci, je n'ai pas de Mac, mais je profiterai du lien pour l'anglais!
Et voilà... C'est pour ça que je réagissais à la réponse de Richard.
Bon, rappel des titres pour l'OP : Objective C est disponible, dans une implémentation libre, pour d'autres plateformes que MacOS. Et le langage est utilisable indépendemment de l'API OpenStep.
Bruno
Niko
Bruno Desthuilliers wrote/ecrivait:
Richard Delorme wrote:
C'est vrai que Objective C est très lié à l'API OpenStep, mais le
langage est utilisable en dehors de toute API. Ce serait comme restreindre le C à la programmation unix.
En matière d'extension objet, il offre l'intérêt d'être un langage bien plus simple, souple et dynamique que C++.
En fait, et pour résumer, c'est du C ansi avec par dessus une extension objet calquée sur Smalltalk (même syntaxe, et globalement même modèle objet). On a donc le paradoxe d'avoir un langage objet de haut niveau directement construit sur et intégrant un langage procédural de bas niveau.
Il comporte moins de fonctionnalités que C++*, mais c'est un langage très élégant et agréable à utiliser, même sans les environnements *Step.
Pour les API, c'est basiquement du C. À la compilation, les messages objets/classes etc. sont converties en C, et les méthodes, tu les écrits en C donc tu peux utiliser les mêmes bibliothèques que pour le C - sans limitations.
En revanche, je n'ai jamais bien compris comment se passait le débuggage, à une époque, il y avait un patch pour gdb, mais ça n'a àmc jamais été intégré à la version courante de gdb - et c'est fort dommage.
Il existe aussi un compilateur spécifique pour l'objective C qui s'appelle POC (cf. google)
Bruno Desthuilliers wrote/ecrivait:
Richard Delorme wrote:
C'est vrai que Objective C est très lié à l'API OpenStep, mais le
langage est utilisable en dehors de toute API. Ce serait comme
restreindre le C à la programmation unix.
En matière d'extension objet, il offre l'intérêt d'être un langage bien
plus simple, souple et dynamique que C++.
En fait, et pour résumer, c'est du C ansi avec par dessus une extension
objet calquée sur Smalltalk (même syntaxe, et globalement même modèle
objet). On a donc le paradoxe d'avoir un langage objet de haut niveau
directement construit sur et intégrant un langage procédural de bas niveau.
Il comporte moins de fonctionnalités que C++*, mais c'est un langage très
élégant et agréable à utiliser, même sans les environnements *Step.
Pour les API, c'est basiquement du C. À la compilation, les messages
objets/classes etc. sont converties en C, et les méthodes, tu les écrits en C
donc tu peux utiliser les mêmes bibliothèques que pour le C - sans limitations.
En revanche, je n'ai jamais bien compris comment se passait le débuggage, à
une époque, il y avait un patch pour gdb, mais ça n'a àmc jamais été intégré à
la version courante de gdb - et c'est fort dommage.
Il existe aussi un compilateur spécifique pour l'objective C qui s'appelle POC
(cf. google)
C'est vrai que Objective C est très lié à l'API OpenStep, mais le
langage est utilisable en dehors de toute API. Ce serait comme restreindre le C à la programmation unix.
En matière d'extension objet, il offre l'intérêt d'être un langage bien plus simple, souple et dynamique que C++.
En fait, et pour résumer, c'est du C ansi avec par dessus une extension objet calquée sur Smalltalk (même syntaxe, et globalement même modèle objet). On a donc le paradoxe d'avoir un langage objet de haut niveau directement construit sur et intégrant un langage procédural de bas niveau.
Il comporte moins de fonctionnalités que C++*, mais c'est un langage très élégant et agréable à utiliser, même sans les environnements *Step.
Pour les API, c'est basiquement du C. À la compilation, les messages objets/classes etc. sont converties en C, et les méthodes, tu les écrits en C donc tu peux utiliser les mêmes bibliothèques que pour le C - sans limitations.
En revanche, je n'ai jamais bien compris comment se passait le débuggage, à une époque, il y avait un patch pour gdb, mais ça n'a àmc jamais été intégré à la version courante de gdb - et c'est fort dommage.
Il existe aussi un compilateur spécifique pour l'objective C qui s'appelle POC (cf. google)
Gabriel Dos Reis
Niko writes:
| > En fait, et pour résumer, c'est du C ansi avec par dessus une extension | > objet calquée sur Smalltalk (même syntaxe, et globalement même modèle | > objet). On a donc le paradoxe d'avoir un langage objet de haut niveau | > directement construit sur et intégrant un langage procédural de bas niveau. | | Il comporte moins de fonctionnalités que C++*,
alors tu aimeras Objective C++ (de Apple bien sûr).
-- Gaby
Niko <nikopole@free.fr.invalid> writes:
| > En fait, et pour résumer, c'est du C ansi avec par dessus une extension
| > objet calquée sur Smalltalk (même syntaxe, et globalement même modèle
| > objet). On a donc le paradoxe d'avoir un langage objet de haut niveau
| > directement construit sur et intégrant un langage procédural de bas niveau.
|
| Il comporte moins de fonctionnalités que C++*,
alors tu aimeras Objective C++ (de Apple bien sûr).
| > En fait, et pour résumer, c'est du C ansi avec par dessus une extension | > objet calquée sur Smalltalk (même syntaxe, et globalement même modèle | > objet). On a donc le paradoxe d'avoir un langage objet de haut niveau | > directement construit sur et intégrant un langage procédural de bas niveau. | | Il comporte moins de fonctionnalités que C++*,
alors tu aimeras Objective C++ (de Apple bien sûr).
-- Gaby
Laurent Deniau
Bruno Desthuilliers wrote:
anaxagore wrote:
Merci, je n'ai pas de Mac, mais je profiterai du lien pour l'anglais!
Et voilà... C'est pour ça que je réagissais à la réponse de Richard.
Bon, rappel des titres pour l'OP : Objective C est disponible, dans une implémentation libre, pour d'autres plateformes que MacOS. Et le langage est utilisable indépendemment de l'API OpenStep.
On peut ajouter que les messages sont en general tres lent (ex: gcc) et qu'il faut tres bien connaitre et le C et Objective-C pour ne pas introduire des UB malgre soi.
a+, ld.
-- [ Laurent Deniau -- Scientific Computing & Data Analysis ] [ CERN -- European Center for Nuclear Research ] [ - http://cern.ch/Laurent.Deniau ] [ -- One becomes old when dreams become regrets -- ]
Bruno Desthuilliers wrote:
anaxagore wrote:
Merci, je n'ai pas de Mac, mais je profiterai du lien pour l'anglais!
Et voilà... C'est pour ça que je réagissais à la réponse de Richard.
Bon, rappel des titres pour l'OP : Objective C est disponible, dans une
implémentation libre, pour d'autres plateformes que MacOS. Et le langage
est utilisable indépendemment de l'API OpenStep.
On peut ajouter que les messages sont en general tres lent (ex: gcc) et qu'il
faut tres bien connaitre et le C et Objective-C pour ne pas introduire des UB
malgre soi.
a+, ld.
--
[ Laurent Deniau -- Scientific Computing & Data Analysis ]
[ CERN -- European Center for Nuclear Research ]
[ Laurent.Deniau@cern.ch - http://cern.ch/Laurent.Deniau ]
[ -- One becomes old when dreams become regrets -- ]
Merci, je n'ai pas de Mac, mais je profiterai du lien pour l'anglais!
Et voilà... C'est pour ça que je réagissais à la réponse de Richard.
Bon, rappel des titres pour l'OP : Objective C est disponible, dans une implémentation libre, pour d'autres plateformes que MacOS. Et le langage est utilisable indépendemment de l'API OpenStep.
On peut ajouter que les messages sont en general tres lent (ex: gcc) et qu'il faut tres bien connaitre et le C et Objective-C pour ne pas introduire des UB malgre soi.
a+, ld.
-- [ Laurent Deniau -- Scientific Computing & Data Analysis ] [ CERN -- European Center for Nuclear Research ] [ - http://cern.ch/Laurent.Deniau ] [ -- One becomes old when dreams become regrets -- ]