Hola y bienvenido de nuevo.
En esta conferencia, quiero discutir algunas de las características específicas relacionadas con
el lenguaje de programación c.
Entonces conocemos todas las ventajas de c.
Hablé de ese tipo de cosas hasta la saciedad.
Sabemos que c produce compactos y programas eficientes. Sin embargo, esa es una característica del
idioma, eso es importante.
Es uno de los mas importantes lenguajes de programación y
seguirá siéndolo. Sabemos todo esto.
Así que, de nuevo, quiero reiterarlo.
Pero las principales características del c son
que son eficientes, portátiles, potentes y flexible y orientado al programador.
Y vamos a cubrir estos con más detalle lo que esto significa.
Pero estos son importantes características de c.
Necesitamos entenderlos de nuevo para entender cómo escribir el
código en este idioma.
Entonces, ¿qué significa la eficiencia? y portabilidad significa?
Bueno, c es un lenguaje eficiente.
Aprovecha todas las capacidades de las computadoras actuales.
Es muy compacto programas y escritos en c.
Son muy rápidos y compactos.
Hablé antes sobre cómo el mapeo de declaraciones c a instrucciones en algún idioma
es muy eficiente.
éste es uno de razones por las que es tan rápido.
Una de las quejas sobre java en el pasado solía ser, oye,
java es realmente lento.
Bueno, no tienes este problema con c.
Cuando escribe un programa en C, funciona rápido, es muy compacto.
Así que esa es una característica del idioma.
Eso es una eficiencia.
Los programadores pueden afinar sus programas para hacerlos
aún más eficientes porque es un nivel tan bajo.
Pueden usar más uso eficiente de la memoria.
No puedes hacer cosas como esta en java.
Java tiene su propio recolector de basura y no se puede manipular la memoria
para que sea más eficiente.
Entonces c es un lenguaje eficiente y es un lenguaje portátil.
Así que mencioné esto brevemente en una conferencia anterior, pero esto es importante
porque lo que significa que si escribe un programa
en c en un sistema operativo, puede ejecutarlo en otro sistema
operativo sin modificarlo.
Uno de los problemas a la hora de escribir. código en el mundo de hoy es
a veces no va a funcionar a menos que escribe en
varios idiomas o lo modifica extensamente.
Entonces, por ejemplo, si escribe una aplicación de Android para un teléfono Android, no
es va a trabajar en un teléfono iOS.
No tienes esos tipos de problemas con c.
Escribe c, y funcionará en todo tipo de hardware diferente, todo tipo
de sistemas operativos diferentes.
De hecho, c es el líder en portabilidad, esta capacidad y los
compiladores están fácilmente disponibles.
Puede obtener un compilador en Windows, Linux, no hay problema.
Los sistemas Linux / Unix normalmente vienen con un compilador de c, por lo que ni siquiera tiene
que descargarlo cuando está en Linux / Unix lo mismo con Macintosh.
Para que pueda comenzar a escribir programas en c inmediatamente, sin descargas externas.
También están disponibles obviamente para Windows.
Pero normalmente para Windows, tendrá que descargar un compilador.
Y vamos a estar haciendo eso cuando descargamos nuestro software requerido.
Entonces hay una buena posibilidad de que obtienes un compilador de c para cualquier
dispositivo que estés usando.
También puede obtener un compilador de c para un
dispositivo Android o un dispositivo iOS, micro nivel realmente bajo o mini computadoras así como procesadores
y automóviles.
También es muy flexible que es importante y también muy poderoso.
Entonces, los kernels de Unix Linux están escritos en c.
¿Qué es un kernel?
Bueno, conocemos Unix y Linux es un sistema operativo.
Conocemos un sistema operativo lo ayudará de manera más eficiente - un
usuario más eficiente - use un computadora, y controla muchos de los aspectos
de la interacción con hardware y así sucesivamente.
El núcleo es el cerebro del sistema operativo.
Así que, al igual que una CPU, es el cerebro de un computadora,
un kernel es donde realmente todo el cerebro y el conocimiento de la sistema operativo, por lo
que normalmente contiene interfaces del hardware y el núcleo que administra la memoria, hace
todo tipo de cosas diferentes.
Y todo eso está escrito en C.
Entonces eso puede decirte el aspecto poderoso del lenguaje.
Si el núcleo de una operación El sistema está escrito en ese
idioma, ese idioma es poderoso.
Tantos compiladores e intérpretes para otros lenguajes se basan
en c o se han escrito en c.
Entonces, si eso no te dice la naturaleza poderosa del lenguaje,
no sé qué lo hará.
Pero Fortran, Perl, Python, cualquier los compiladores que están escritos en ese tipo de
lenguajes están escritos en c.
Por lo tanto, los programas c se han utilizado para resolver
problemas de física e ingeniería e incluso para animar efectos especiales para películas, ampliamente utilizados
para muchas cosas diferentes.
La flexibilidad también es importante, especialmente cuando eres un desarrollador y
estás escribiendo este código.
Quieres poder hacer cosas de diferentes maneras.
Quieres poder resolver un problema de muchas formas.
Más flexibilidad, por lo general, mejor.
Sin embargo, hay una compensación entre flexibilidad y rendimiento.
Así que a veces es pegadizo cuando estás diseñando un lenguaje, pero c fue
diseñado para ser flexible y es muy flexible.
Entonces puedes hacer casi todo lo que quieras en un programa c.
Puedes escribir todo diferente tipos de aplicaciones.
Y también puedes administrar la memoria y hacer cosas diferentes en las que muchos
otros idiomas te restringen.
Hay una compensación porque a veces, la flexibilidad provoca
más errores o hace que los desarrolladores no comprender completamente ciertos conceptos porque pueden
ser más complejos.
Pero, en última instancia, la flexibilidad es un algo bueno,
especialmente si eres un desarrollador que comprende el idioma muy bien.
También es la base para más lenguajes avanzados,
como c ++, lo mencionamos anteriormente.
Se utiliza para desarrollar teléfonos móviles. aplicaciones en forma de objetivo-c.
Objective-c es propietario idioma de Apple.
Básicamente, es c con objetos al igual que C ++, pero decidieron escribir
su propio idioma.
Pero se usa menos en iOS y menos porque Swift está siendo más
popular, pero también es fácil aprender debido a su compacidad.
Es un primer idioma ideal para aprende si quieres ser programador.
Y creo que le he dado el justificación para eso bastante bien.
Vas a adquirir conocimiento suficiente para
el desarrollo de aplicaciones prácticas muy rápido y muy fácilmente.
Entonces es por eso que es el bueno primero en aprender.
Y eso es lo que vas a hacer el aviso
en esta clase es, wow, ahora que aprendí c wow, es mucho más fácil
para aprender java, es mucho más fácil aprender php, es mucho más fácil aprender estos otros
idiomas porque tiene todo lo que esos idiomas tener y es muy fácil de aprender.
Está orientado al programador.
Esa es una característica del idioma.
Satisface las necesidades de los programadores.
Te dije como Dennis Ritchie cuando creó el
lenguaje quería hacerlo más desarrollador se centró, y lo hizo.
Logró ese objetivo.
Te da acceso directo a hardware, le permite acceder directamente a la memoria
y administrar su propia memoria.
Entonces viene la flexibilidad en juego cuando está
orientado al programador.
En Java, no puedes hacer muchas de estas cosas como administrar tu propia memoria.
C también tiene muchas otras capacidades que permiten flexibilidad.
Y creo que la flexibilidad permite estar más orientado al programador, porque a los programadores
les gusta eso.
Les gusta esa flexibilidad, ellos no quiero que me digan qué hacer.
Contiene una gran selección de operadores, que le
permiten expresarse de manera sucinta.
Ahora esto significa que no sabemos lo que es todavía un operador.
Pero un operador puede ser cosas como sumar y
restar operadores matemáticos o asignaciones operadores que asignan datos a la memoria.
Y cuantos más operadores te han permitido expresarte más
en tu código.
Y así, una función de idioma con estar más orientado al programador es esta lista
de operadores que hablar con mucho más detalle.
Es menos estricto que la mayoría de los idiomas. Limitar lo que puedes hacer
ya se ha hablado de esto.
Mencioné la compensación con esto, flexibilidad versus rigor.
Es una ventaja que puedes hacer las cosas de muchas formas diferentes.
Sin embargo, podría ser un peligro porque es más
propenso a errores de los programadores, especialmente con algo como punteros.
Entonces, el hecho de que pueda administrar su La propia memoria en c es muy flexible, pero
a veces también es muy complicada.
Y como resultado, muchos programadores introducir errores en los programas.
Ahora java no permite usted para administrar su memoria.
Pero también es menos flexible pero también reduce sus errores en
su programa.
Entonces hay una compensación.
Básicamente quieres tener flexibilidad al permitir también que las cosas
sean menos complejas.
C te da más libertad, pero también impone más responsabilidad al desarrollador,
y eso es por qué está orientado a programas.
Las implementaciones de C tienen una gran biblioteca de funciones c útiles.
Para que no tengas que escribir todo en c si quieres hacer algo.
Los lenguajes de programación normalmente contienen otra funcionalidad del programa que viene
con el idioma.
Entonces, por ejemplo, si quieres leer entrada del usuario, no desea escribir código
c de bajo nivel para hacer eso.
Habrá códigos en c que ya lo hace por ti
y simplemente reutilizas ese código.
Y eso suele estar encapsulado en algo llamado biblioteca.
Y entonces c tiene todo tipo de biblioteca
funciones para leer datos desde el teclado, para escribir datos en archivos, para crear todo tipo de cosas agradables con diferentes
procesos y amenazas.
Me refiero a todo tipo de cosas bonitas.
Entonces, el hecho de que muchos la implementación viene con el lenguaje
y no es necesario de hecho, impleméntelo usted mismo, solo tiene que aprender
a usarlo las bibliotecas son muy ventajosas y están muy
orientadas a los programadores.
Algunas otras características de c son proporciona características de bajo nivel que generalmente
son proporcionadas por el nivel inferior idiomas, hablamos de esto.
Pero de nuevo, el mejor ejemplo es la memoria. gestión, acceso directo a la memoria.
Los programas pueden ser manipulado utilizando bits.
Bueno, si eso no es un nivel bajo No se que es. Es la capacidad de
gestionar la memoria. representación a nivel de bits.
Bits y bytes son cómo almacenar datos en computadoras, proporciona una amplia
variedad de operadores de manipulación de bits.
De nuevo, algo en el idioma del que hablaremos con más detalle.
Los punteros juegan un papel importante en c.
Este es un concepto que puede ha oído hablar antes, es posible que
no haya oído hablar de él, pero es relacionados con la gestión de la memoria.
Vamos a tener muchos conferencias sobre punteros. Pero es una característica muy, muy
importante of c con el que debería estar familiarizado en
un nivel muy alto.
C administra la memoria, c punteros. A menudo, cuando piensa en el
lenguaje de programación c, primero lo que piensas son los punteros.
Y todo esto es directo acceso a la memoria.
Desventajas de c, hablamos sobre esa compensación de flexibilidad, flexibilidad
versus libertad.
También requiere mayor responsabilidad.
Algunos ven esto como una desventaja, algunos opinan que se abusa de los punteros.
Y como resultado, muchos la gente escribe programas de c malos.
Bueno, si, si le das a alguien una herramienta que haces algo,
lo hacen incorrectamente, ¿quién tiene la culpa?
Es como, de nuevo, ¿quieres? para restringir esa
herramienta porque se abusa o desea permitir esa herramienta para permitir flexibilidad.
Por lo tanto, a menudo puede ser más flexible pero corre el riesgo de cometer más errores
y muchas veces estos errores son muy difíciles de encontrar y rastrear, especialmente
si son cosas de memoria.
Entonces eso puede ser un problema.
Otras cosas por su riqueza de operadores y su concisión, dificulta
el lenguaje para leer y seguir a veces.
En su mayor parte, c es muy fácilmente legible.
Pero si usa muchos de estos diferentes operadores, que pueden
hacerlo más complejo.
Entonces hay una oportunidad de escribir hasta un código oscuro, pero ese es
cualquier lenguaje que pueda estar mal escrito.
Entonces puedes usar el inglés idioma cuando hablas y
puedes tener mala gramática.
No es diferente cuando escribes utilizar un lenguaje de programación.
Pero algunos dicen que con c es una desventaja debido a todos estos operadores.
Si lo usa incorrectamente, puede ser más difícil seguir el código.
Así que solo para resumir.
Esta es una bonita ilustración. nuevamente encontré en
la web que me gustaría brindarles.
Las características principales del lenguaje c: rápido y eficiente, portátil, muchas bibliotecas agradables donde puedes puede reutilizar el
código y no tiene que hacer las cosas por
su cuenta, se habló
de la modularidad antes, pero esta es la idea de
organizar el código alrededor de
funciones, fácil de extender y luego todo estos poderosos operadores que te permiten
hacer cosas.
Así que muchas características interesantes.
Y la mayoría de las características que de los que acabamos de hablar están
en muchos idiomas modernos porque están construidos a partir de c.