Introducci贸n a los algoritmos

1

驴Qu茅 aprender谩s sobre algoritmos y pensamiento l贸gico?

2

La importancia de entrenar tu pensamiento l贸gico

3

驴Qu茅 entiende una computadora?

4

驴Qu茅 es el sistema binario?

5

Metodolog铆a para construir un algoritmo: requerimientos y proceso mental

Tipos de datos y operadores l贸gicos

6

驴Qu茅 son Bits y Bytes?

7

驴Qu茅 son variables, constantes y tipos de datos?

8

Identifica las variables seg煤n los requerimientos de negocio

9

Strings (texto) y concatenaci贸n

10

N煤meros y operaciones matem谩ticas b谩sicas

11

Operaciones matem谩ticas compuestas: par茅ntesis y orden de evaluaci贸n

12

True y false: booleanos y tablas de la verdad

13

Arrays y funciones sobre arrays

14

驴C贸mo dise帽ar algoritmos con diagramas de flujo?

15

Define el tipo de dato seg煤n los requerimientos de negocio

Estructuras de control

16

If y Else: condicionales y comparaciones para proteger tus algoritmos

17

Switch y Case: condicionales en forma de casos

18

Excepciones y errores: Throw y Try Catch

19

驴Qu茅 es un ciclo? While, For y Do While

20

Diagrama de flujo con condicionales

21

Diagrama de flujo con ciclos

22

Tutorial de algoritmos de programaci贸n

23

Dise帽a algoritmos para resolver problemas de tu vida diaria

Encapsula tu c贸digo en funciones

24

驴Qu茅 es una funci贸n?

25

驴C贸mo desarrollar tu l贸gica de programaci贸n?

26

Modularizaci贸n de c贸digo

27

Flujo de funciones para encapsular algoritmos

28

Nomenclaturas de programaci贸n: camelCase, PascalCase, snake_case

29

驴Qu茅 es recursividad? Funciones que se llaman a s铆 mismas

30

Convierte algoritmos con ciclos a funciones recursivas

31

Resolviendo acertijos

Traduce tus algoritmos a lenguajes de programaci贸n

32

Diferencias entre lenguajes de programaci贸n

33

C贸mo escribir c贸digo en cualquier lenguaje de programaci贸n

34

C贸mo programar en JavaScript, Python y PHP

35

Introducci贸n al ejercicio en JavaScript

36

Programando en JavaScript

37

Introducci贸n al ejercicio en Python

38

Programando en Python

39

Introducci贸n al ejercicio en PHP

40

Programando en PHP

41

C贸mo programar en Java y Lenguaje C

42

Introducci贸n al ejercicio en Java

43

Programando en Java

44

Introducci贸n al ejercicio en C

45

Programando en Lenguaje C

46

Traduce diagramas de flujo a c贸digo en lenguajes de programaci贸n

Conclusiones

47

Pr贸ximos pasos para aprender programaci贸n profesionalmente

Nomenclaturas de programaci贸n: camelCase, PascalCase, snake_case

28/47

Lectura

Las nomenclaturas son formas de llamar a elementos, sentencias o acciones m谩s espec铆ficas. En programaci贸n tenemos diferentes formas que a veces son aplicadas como 鈥渞eglas鈥 sobre las cuales llevamos uniformidad en el c贸digo y un est谩ndar de trabajo especialmente dentro de equipos de desarrollo de software.

camelCase o CamelCase

Es una pr谩ctica de escritura que consiste en la uni贸n de dos o m谩s palabras sin espacios entre ellas, pero las diferencian una letra may煤scula inicial a partir de la segunda palabra, por ejemplo: miNombreEs.

Este nombre est谩 dado porque forman con las letras may煤sculas iniciales la estructura de un camello que sube cuando hay un inicio de palabra y baja durante su definici贸n.

PascalCase

Es similar a camelCase con una variaci贸n bastante simple: desde la primera letra de la frase se inicia con may煤scula cada palabra, sin embargo se mantiene la pr谩ctica de no tener espacios entre palabras y cada palabra siempre empieza con su primera letra may煤scula. Por ejemplo: MiNombreEs.

snake_case

La nomenclatura 鈥渟erpiente鈥 es definida de esta forma porque siempre la usamos sobre el piso, esto quiere decir que las letras siempre las min煤sculas y las diferentes palabras que compongan el nombre o la definici贸n que se desea dar est谩n separadas por un guion bajo de esta forma: mi_nombre_es.


Te invito a la siguiente clase para que aprendas qu茅 es recursividad y c贸mo entrenar nuestro pensamiento para pensar recursivamente.

Aportes 84

Preguntas 2

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

En cuanto a nomenclaturas, cada lenguaje tiene su propia nomenclatura (realmente no pasa nada si usas otra nomenclatura鈥 pero ser铆a raro鈥)
.
Por ejemplo:
.

  1. 馃惈 camelCase: Camel Case se suele usar mucho en lenguajes como JavaScript, al declarar nombres de variables o funciones
  2. 馃椏 PascalCase: Esta nomenclatura en m谩s com煤n verla en nombres de clases (concepto que aprender谩s en alg煤n futuro 馃憖)
  3. 馃悕 snake_case: (en lo personal mi favorita porque es m谩s legible) Esta nomenclatura es muy com煤n encontrarla en lenguajes como鈥 驴adivinas cu谩l? 馃憖 As铆 es, Python, raro ser铆a que Python no usara Snake Case jaja, aunque a mi tambi茅n me gusta usarla en PHP 馃槃

Tengo entendido que esas reglas son diferentes cuando se necesita nombrar clases, carpetas, variables y otros elementos. Hubiera sido genial que la explicaci贸n fuese mas profunda. Encontr茅 este articulo que les puede ayudar a aclarar algunas dudas! https://betterprogramming.pub/string-case-styles-camel-pascal-snake-and-kebab-case-981407998841

馃惐鈥嶐煉 Es importante saber las gu铆as de estilo que recomienda un lenguaje de programaci贸n, para saber que nomenclatura debemos manejar al momento de escribir c贸digo, nombrar archivos y ficheros. Gu铆a de estilos de Dart: https://dart.dev/guides/language/effective-dart/style, un excelente lenguaje de programaci贸n.

Es importante que verifiquemos que nomenclatura es la recomendada en el lenguaje de programaci贸n que estamos trabajando, tambi茅n cual usan los otros desarrolladores de la empresa.
Ejemplo de nomenclaturas recomendadas:

  • Python: snake_case
  • JavaScript: camelCase

Esto evitara refactorizaciones del codigo posteriores, si trabajamos con una nomenclatura diferente a la de nuestros compa帽eros developers.

  • CamelCase o camelCase : Cuando escribimos un nombre pero sinEspacioYConCada inicio de palabra enMay煤scula, sin obligaci贸n de la primera letra sea en May煤sculas, Ejm鈥 miH谩bitoFavoritoEsAprender


  • PascalCase: Lo mismo que CamalCase Pero s铆 tiene que ir la primera letra en May煤scula, Ejm鈥 MiLugarFavoritoEsT煤Coraz贸n


  • snake_case: Snake de serpiente y serpiente de estar siempre abajo, por eso en esta nomenclatura, se escribe sin May煤sculas y con cada nueva palabra un_gui贸n_bajo鈥 ejm: platzi_es_mi_droga

Excelente explicaci贸n, la verdad utilizaba snake_case, pero no tenia idea que se llamara as铆.

Sobre la nomenclatura Camel case existen dos tipos:

  • Upper camel case: Es cuando su prima letra empieza en may煤scula
    Ej: HolaMundo
  • Lower Camel case: Es cuando si primera letra en min煤scula
    Ej: holaMundo

Desconoc铆a el nombre de estas pr谩cticas, pero es muy bueno poderlas identificar ahora por su nombre.
buenaClase, Aprend铆Mas el_d铆a_de_hoy 馃槃

camelCase se usa mucho en nombre de variables y funciones
PascalCase se usa mucho en nombre de clases
snake_case se usa mucho en nombre de campos o columnas en una tabla de una base de datos

Aqu铆 hay un art铆culo de Wikipedia que muestra m谩s casos:
https://en.wikipedia.org/wiki/Naming_convention_(programming)#Multiple-word_identifiers

Nomenclaturas:

  1. camelCase : miNombreEsOmarRuiz

  2. PascalCase : MiNombreEsOmarRuiz

  3. snake_case : mi_nombre_es_omar_ruiz

camelCase aka lowerCamelCase,
PascalCase aka upperCamelCase
saludos 馃槂

like los teamCamelCase 馃槀馃挭馃徑

Algo mas que se puede agregar es cuando se usa constantes las letran siempre van en masyusculas.

Me siento c贸modo con PascalCase, estoy acostumbrado a poner las palabras con Capilal letter al incio u.u.

Yo suelo usar siempre camelCase, aunque siempre es tentador empezar con may煤scula.

隆Wow! No lo sab铆a.
Entonces, mis directorios los guardo con nomenclatura Pascal Case, jeje.

Si deseas saber que nomenclatura usa el lenguaje que usar谩s o est谩s usando, se recomienda encaresidamente leer la documenaci贸n oficial y as铆 no tener problemas con tus futuros proyectos (sobretodos los que trabajas con un equipo de desarrollo).

Es importante que ustedes y su equipo de trabajo se pongan de acuerdo para usar de preferencia 1 de las opciones, de esta manera ser谩 m谩s f谩cil identificar y hacer cambio de ellas.
脡xito

Nombrando a mis funciones 馃槃
.
camelCase o CamelCase

<function obtenerResultado()
{
   //codigo
}>

PascalCase

<function ObtenerResultado()
{
   //codigo
}>

snake_case

function Obtener_resultado()
{
    //codigo 
}

me parece mucho mas ordenado el snake_case u.u

tienen que saber que cada lenguaje tiene su propia nomenclatura y su forma de usarla , no pasa nada si usas otro tipo de nomenclatura pero si se veria raro si lo haces pero no pasaria nada

Una nomenclatura es una forma de declaraci贸n de un elemento.

  • camelCase:
    Aqu铆, las palabras vayan juntas sin espacio, con la letra inicial del elemento en min煤scula y la pr貌xima palabra arranque con su primer letra en may煤scula.
    Ej: let miNombre = 鈥楴icol谩s鈥
    El nombre se debe a que la lectura como que se eleva cada vez que hay una palabra nueva (por la may煤scula)鈥 como las jorobas de un camello.

  • PascalCase:
    Es igual a camelCase con la excepci贸n que la letra inicial de la primera palabra va en may煤scula.
    Ej: let MiNombre = 鈥楴icol谩s鈥

  • snake_case:
    Se llama as铆 porque nunca se despega del piso. Todas las palabras van en min煤scula con un _ como separador.
    Ej: let mi_nombre = 鈥楴icol谩s鈥

Cada lenguaje de programaci贸n utiliza x nomenclatura. Por ejemplo JS utiliza camelCase, Python snake_case, PascalCase se ve en las clases y as铆. La misma nomenclatura que Java.

Es importante ver esto como una especie de regla y usar una misma nomenclatura en todo un proyecto para as铆 hacer un c贸digo m谩s uniforme.

Creo que ya estamos en 鈥渮ona de turbulencia鈥 en el curso, para quienes empezamos de cero, ya que mi avance era lento pero progresivo, y ahora voy sumamente lento y siento no entender lo que me est谩n ense帽ando鈥 definitivamente estoy en 鈥渮ona de turbulencia鈥

Muy importante estos t茅rminos para nuestro camino en la programaci贸n

Al menos en javascript veo que sea usa mucho camelCase. Y en los cursos los profes usan mucho esa sintaxis. Con algunos excepciones especiales como con objetos o clases. Hasta ahora es lo que veo

Para el caso de Python usamos snake_case

esto quiere decir que las letras siempre son min煤sculas y est谩n separadas por un guion bajo de esta forma: mi_nombre_es.

mi_nombre_es = 'Cristian'

No es obligatorio, pero es bueno as铆 muchos entender谩n nuestro c贸digos, y nosotros tambi茅n entenderemos el de los dem谩s:

馃惈 camelCase: Camel Case se suele usar mucho en lenguajes como JavaScript, al declarar nombres de variables o funciones
馃椏 PascalCase: Esta nomenclatura en m谩s com煤n verla en nombres de clases
馃悕 snake_case: Esta nomenclatura es muy com煤n encontrarla en lenguajes como Python

muy ch茅vere, el uso de esto siempre seria bueno comentarlo con el equipo de trabajo para ponerse de acuerdo y evitar confusiones.

Yo siempre uso CamelCase y aun que he probado las otras dos, siempre termino usando CamelCase

La verdad a mi me encanta snake_case le da cierta exclusividad a tu c贸digo de hecho simplifica el nombre y es mas puntual por que tiene separaciones a manera de entender mejor el CO_DI_GO. ohhh yeahhh!

PascalCase o Upper Camel Case tambien le puedes decir, realmente, siempre uso camel cases con lower o upper, es mas simple, lo importante es que cuando entregues tui codigo a otro lo pueda entender.

Me ense帽aron la nomenclatura mi_nombre_es, desde ese entonces hasta hoy la sigo empleando

No sab铆a que ten铆a un nombre espec铆fico la forma en la que escriben los nombres de variables y funciones馃槓.

驴Alguien m谩s usa Edge para usar el lector inmersivo (F9) en estas clases de solo texto?

sin saberlo yo los nombraba en PascalCase 馃槃

Las nomenclaturas de programaci贸n, en resumen son la manera de darle uniformidad y constancia al estilo con que escribimos el c贸digo, para cuando tengamos que trabajar con un equipo de desarrollo se mantenga un orden y sea m谩s f谩cil su legibilidad .

Un ejemplo de esto seria el estilo que usemos para declarar variables dentro de un c贸digo, para lo cual se nos presentan estas tres opciones:

camelCase:
var primeraVariable;

PascalCase:
var SegundaVariable;

snake_case:
var tercera_variable;

Interesante comprender sobre las nomenclaturas, tbien depende de q lenguaje sea para utilizarlos

Dejo mis apuntes, espero les sirva 馃槂


Es interesante saber que regularmente empleaba la nomenclatura PascalCase y snake_case sin saber que ten铆an un nombre.

nombreVariable
NombreVariable
nombre_variable

Woww, aunque ya he programado algunas veces no sabia que como tal exist铆a una nomenclatura qu茅 se deb铆a seguir (la uso pero no sabia que ten铆an nombre), en mi caso la mas utilizada es snake, ya que es la mas recomendable a la hora de crear archivos o tambi茅n de nombrar variables en los lenguajes de programaci贸n.

Resumen:

Las nomenclaturas son formas de llamar a elementos. En el desarrollo de software se aplican las siguientes reglas que funcionan como estandar para trabajar en equipo de desarrollo, estas son algunas de ellas:

  • camelCase
algoAsiEsElEjemploPropuestoPorMi
  • PascalCase
SiEsAsiEntoncesSi
  • snake_case
entonces_el_estilo_de_culebra_o_serpiente_es_asi

Sobre snake_case yo me recuerdo buscando una nomenclatura com煤n para nombrar mis archivos, pero al tiempo identificables para buscadores. Si bautizo un archivo de alguna 茅stas dos maneras:

trading_for_rookies
trading-for-rookies

Si busco en Windows Explorer trading, me saldr铆an ambos resultados?

Al desplazar en ambos nombres de archivo con CONTROL + 鈫 o CONTROL + 鈫 en nomenclatura snake va de principio a fin de la nomenclatura, en cambio en modo separaci贸n por guiones CONTROL + 鈫 o CONTROL + 鈫 desplaza palabra por palabra

Excelente Informacion, realmente solo habia hecho esto con camelCase, muy buen curso.

  • Camel Case (contarElementos)
    La notaci贸n Camel Case combina las palabras directamente, sin usar ning煤n s铆mbolo, estableciendo que la primera letra de cada palabra est茅 en may煤scula a excepci贸n de la primera palabra, estando el resto de letras en min煤sculas. Este tipo de notaci贸n est谩 muy extendida, siendo su uso muy com煤n tanto en la declaraci贸n de variables como en el nombre de funciones y m茅todos.

Aqu铆 tienes varios ejemplos:

La sintaxis de contar palabras en notaci贸n Camel Case ser铆a contarPalabras.
La sintaxis de aumentar nivel dificultad en notaci贸n Camel Case ser铆a aumentarNivelDificultad.

  • Pascal Case (ContarElementos)
    La notaci贸n Pascal Case combina las palabras directamente, sin usar ning煤n s铆mbolo, estableciendo que la primera letra de cada palabra est茅 en may煤scula sin excepciones, estando el resto de letras en min煤sculas. Su uso es muy habitual en la definici贸n de los nombres de las clases de m煤ltiples lenguajes, como JavaScript o PHP.

Aqu铆 tienes varios ejemplos:

La sintaxis de contar palabras en notaci贸n Pascal Case ser铆a ContarPalabras.
La sintaxis de aumentar nivel dificultad en notaci贸n Pascal Case ser铆a AumentarNivelDificultad.

  • Snake Case (contar_elementos)
    La notaci贸n Snake Case combina las palabras usando un gui贸n bajo _ como nexo. Existen dos versiones de esta notaci贸n, una en la que todas las letras est谩n en min煤scula y otra en la que todas las letras est谩n en min煤scula. Esta notaci贸n, cuando se usa en may煤scula, es habitual en la declaraci贸n de constantes de lenguajes como PHP o JavaScript.

La notaci贸n Snake Case en su versi贸n min煤scula tambi茅n es muy utilizada en la declaraci贸n de los nombres de los campos de las bases de datos. Adem谩s tambi茅n se utilizaba en la declaraci贸n de variables de PHP y, de hecho, a煤n es el est谩ndar de muchos desarrolladores cuando programan plugins o temas para WordPress.

Aqu铆 tienes varios ejemplos:

La sintaxis de contar palabras en notaci贸n Snake Case ser铆a contar_palabras.
La sintaxis de aumentar nivel dificultad en notaci贸n Snake Case ser铆a aumentar_nivel_dificultad.

Desde que aprendi a programar he utilizado las nomenclaturas de camelCase y PascalCase, ahora hacen parte de mi vida y practicamente cualquier variable o archivo que guarde es nombrado con algunas de estas nomeclaturas.

Por fin entiendo la definici贸n y por que se usa el intercalado de mayusculas. Es algo simple de verdad, pero necesario

No sabia que esto existia, y lo curioso es que siempre he usado estas nomenclaturas, sobretodo snake_case y camelCase, y ni siquiera los he usado en programacion, sino en la creacion de cortos animados 3D donde todos los assets deben estar nombrados.

Antes ve铆a mucho el camelCase y pensaba que era el 煤nico exclusivo para cierto tipo de lenguaje, y al encontrarme con snake_case yo interpretaba autom谩ticamente que era un lenguaje diferente pero ahora veo que no es necesariamente as铆 馃槸馃槸馃槸.

es interesante saber el porque de las cosas, siempre hab铆a visto en c贸digo la nomenclatura CamelCase o camelCase y snake_case pero nunca hab铆a tenido el porque de esa nomenclatura.
Gracias por los aportes definitivamente vale la pena seguir aprendiendo.

馃 Jam谩s me hab铆a puesto a pensar que esas formas de escribir nombres en programaci贸n tuvieran un nombre.

Interesante que siempre hab铆a utilizado la nomenclatura PascalCase pero no ten铆a ni idea que ese era su nombre. Fue algo m谩s de sentido com煤n y visualizaci贸n que de conocer su nombre antes.

Ahora si me quedo claro ese tipo de convenciones !

Debemos verificar que nomenclatura es la recomendada en el lenguaje de programaci贸n que estamos trabajando, tambi茅n cu谩l usan los otros desarrolladores de la empresa.
Ejemplo de nomenclaturas recomendadas:
Python: snake_case
JavaScript: camelCase
Esto evitara refactorizaciones del c贸digo posteriores.

Hey deber铆an corregir esta pregunta? dice camelcase y ese caso no existe, en la clase nos ense帽an 鈥淐amelCase鈥 o 鈥淐amelCase鈥

CAMELCASE:馃惈
PASCALCASE:馃挧馃挦
SNAKECASE:馃悕

Es bueno saber eso , porque es una buena practica definir variables a lo que necesitamos en relacionado

Falto Kebab case, que es practicamente lo mismo que snake_case pero con el guiion en la mitad mi-nombre-es-yeison

Buen aporte ;D

la forma en como vas a declarar las variables, funciones, en general como vas a teclear tu c贸digo y como se debe de leer el mismo

Nomenclaturas de Programacion: es la forma de escribir/declarar nombres de variables o funciones.

Terminolog铆a utilizada para la estandarizaci贸n de c贸digo, asignar nombres a variables y llevar un orden en nuestro software

Buena info. Gracias.

Yo soy team camelCase鈾

馃惈 camelCase
馃椏 PascalCase
馃悕 snake_case
馃崲 kebab-case

camelCase nombreAlumno
PascalCase NombreALumno
snake_case nomnre_alumno

Excelente!!!

Team snake_case!..

yo siempre uso snake_case, la uso para no perderme en que si puse algo con mayuscula o minuscula

Me est谩 gustando 鈥渟nake_case鈥, en mi opini贸n es simple y clara.

Me encatan estos puntos de semantica en la programacion

es muy informativo e interesante

A) camelCase : amoPlatzi
B) PascalCase : AmoPlatzi
C) snak_case: amo_platzi

mi fvorito es el camelCase.

genial !

genial los conocimientos aprendidos.

muy bueno, yo he usado camelCase y snake_case

Que buen aporte, ahora ya se como se llaman este tipo de escrituras.

El camelCase y PascalCase los he usado cuando programo en Java y el snake_case cuando programo en Python

Excelente aporte. No sab铆a que esta forma de escribir tuviera su est谩ndar o definiciones.

creo mucho en el sanke_case no se complica en ocasiones por si dejo algo en mayuscual o minuscula

super

PascalCase b谩sicamente por costumbre