Objective C é um desdobramento da linguagem de programação C, desenvolvido na década de 1970 como um dos primeiros sistemas de alto nível linguagem de programação. Objective C incorpora a sintaxe do C com as capacidades orientadas a objetos de Smalltalk . A Apple integrou seu framework de desenvolvimento , Cacau, com Objective C para a programação do sistema operacional Mac . Objective C é útil para desenvolvedores da Apple , mas ele perde um pouco do seu encanto se um aplicativo precisa ser cross- platformed com outro sistema operacional . Além disso, Objective C não suporta o recurso de " namespaces " do C + + (outro desdobramento do C ), que ajuda a lidar com múltiplas bibliotecas de código de terceiros e módulos. Desenvolvimento da Linguagem para plataformas populares
Uma vantagem de Objective C é que é o idioma principal utilizado para desenvolver aplicativos para os produtos da Apple . Objective C é a linguagem de programação desenvolvida especificamente para trabalhar com o quadro de programação de cacau , o que significa que ele tem acesso às bibliotecas de desenvolvimento da Apple. Criação de aplicativos para qualquer produto da Apple , como o iPod , iPad ou sistemas OS X , requer algum conhecimento de Objective C.
Objective C + + são Runtime
C e C linguagens de programação " compilado " , o que significa que o código fonte escrito pelo programador é traduzido em linguagem de máquina , criando um arquivo executável que é executado no sistema operacional do usuário. Linguagens compiladas são restritas em como eles funcionam : Muitas decisões que envolvem a alocação de memória e criação do objeto acontecer em tempo de compilação , não enquanto o programa executa (runtime) . Um programa escrito em Objective C é mais dinâmico , capaz de reunir informações sobre si mesmo para tomar decisões a respeito de memória ou os tipos de dados , ao invés de ter tido as decisões tomadas durante o tempo de codificação.
Namespaces < br >
Uma desvantagem de programação em Objective C é que ele não contém namespaces. Em outras línguas , em particular C + + , os espaços contêm funcionalidade definida por um nome . Funções em um espaço de nomes só existem no âmbito de aplicação desse namespace, o que significa que uma outra função com um nome idêntico em outro namespace pode ser usado pelo programador sem alterar quaisquer nomes. Isso permite que os programadores a importar uma variedade de bibliotecas e não se preocupar desnecessariamente sobre nomes de funções conflitantes . Em Objective-C , a importação de duas bibliotecas com o mesmo nome de função pode causar um erro se o programador não é cuidado, porque o compilador não tem como saber qual a função de realmente chamar.
Portabilidade
Outra desvantagem de Objective C é que ela depende muito do quadro de cacau para sua funcionalidade. Embora este seja um benefício para desenvolvedores da Apple , os desenvolvedores do Windows não vai encontrar o mesmo sucesso escrevendo aplicações Windows em Objective C. Em vez disso, o desenvolvimento do Windows concentra-se nas bibliotecas . NET , vinculada ao Visual C + + , C # ou linguagens de programação VB.NET . Desenvolvedores da Apple não precisa se preocupar com esse lado negativo, a menos que eles estão olhando para a portabilidade entre plataformas.