Mostrando las entradas con la etiqueta swift. Mostrar todas las entradas
Mostrando las entradas con la etiqueta swift. Mostrar todas las entradas

miércoles, 19 de abril de 2023

Le preguntamos a ChatGPT ¿cual es el lenguaje de programación que debo estudiar?


Estuve jugando un rato con chatGPT y les cuento : 

YO: ¿cual es el lenguaje de programación que debo estudiar?

ChatGPT : La elección del lenguaje de programación a estudiar dependerá de tus objetivos y del tipo de aplicación que quieras desarrollar. Aquí te presento algunas opciones populares y sus características principales:

Python: Es un lenguaje de programación popular en la actualidad debido a su facilidad de aprendizaje, su versatilidad y su amplio uso en aplicaciones de inteligencia artificial, ciencia de datos y análisis estadístico.

JavaScript: Es un lenguaje de programación utilizado en aplicaciones web para crear interacciones dinámicas en la interfaz de usuario, también es muy utilizado en el desarrollo de aplicaciones móviles.

Java: Es un lenguaje de programación orientado a objetos y es utilizado en aplicaciones empresariales, de escritorio y móviles.

C++: Es un lenguaje de programación de bajo nivel que se utiliza en aplicaciones de sistemas y de rendimiento.

Swift: Es el lenguaje de programación utilizado para desarrollar aplicaciones para dispositivos Apple, como iPhone y iPad.

Te recomiendo investigar más sobre estas opciones y elegir la que mejor se adapte a tus objetivos y necesidades. También es importante tener en cuenta que el aprendizaje de un lenguaje de programación no es algo que se logre de la noche a la mañana, sino que requiere práctica y dedicación.


YO: Con cual encontraré trabajo más rápido?

ChatGPT : No hay una respuesta definitiva a esta pregunta, ya que el mercado laboral y las oportunidades de trabajo varían de acuerdo a la ubicación geográfica, las tendencias de la industria y la experiencia previa que tengas.

Sin embargo, algunos lenguajes de programación son más demandados que otros en la actualidad. Por ejemplo, Python es muy utilizado en la industria de la inteligencia artificial, análisis de datos y aprendizaje automático, lo que puede hacer que sea más fácil encontrar trabajo en estas áreas.

También es importante destacar que el dominio de un solo lenguaje de programación no garantiza la obtención de trabajo en el campo de la programación. Muchas empresas buscan programadores que tengan habilidades en múltiples lenguajes y tecnologías, así como una comprensión profunda de los conceptos de programación y las metodologías de desarrollo de software.

En resumen, la elección del lenguaje de programación que te ayudará a encontrar trabajo más rápido dependerá de tus habilidades, intereses y las oportunidades laborales disponibles en tu área geográfica. Lo mejor es enfocarse en aprender bien un lenguaje de programación y tener una sólida comprensión de los fundamentos de la programación para destacar en el mercado laboral.


YO: Y cual te gusta más?

ChatGPT : Como modelo de lenguaje de programación, como soy, no tengo emociones ni preferencias. Mi función es brindar información objetiva y responder a preguntas de manera imparcial.

Sin embargo, en la comunidad de programadores, cada uno tiene sus propias preferencias y opiniones personales sobre qué lenguaje de programación es mejor para diferentes aplicaciones. La elección del lenguaje de programación dependerá de las necesidades del proyecto y del programador en sí. Lo importante es que el lenguaje de programación elegido sea adecuado para el propósito del proyecto y que el programador tenga la experiencia y habilidades necesarias para trabajar con él de manera efectiva.


Interesante conversación que les quería compartír, ustedes que opinan?



lunes, 1 de junio de 2020

repl.it, Una super IDE online


repl.it es un IDE gratuito, colaborativo y en el navegador para codificar en más de 50 lenguajes, sin gastar un segundo en la configuración.

Les cuento, quería probar algo en Haskell y me encontré con esta joya. Esta muy bueno, te haces un usuario si queres, codeas y si configuraste un repo en github te guarda los archivos ahí. Podes compartir codigo, trabajar en equipo...

Podes programar en : 

Python, Nodejs, C, Java, C++, Ruby, HTML, CSS, JS, Lisp, Go, Rust, Roy, kotlin, Swift, F#, C#, etc...

Punto bajo, no permite ni Scala, ni Grovyy... 


Dejo link: https://repl.it/

martes, 5 de mayo de 2020

Swift es como Kotlin


Quiero compartir una pagina que compara Swift con Kotlin.

Lo comparto porque hasta esta pagina, no me parecían similares pero son igualitos :D

Dejo link: http://nilhcem.com/swift-is-like-kotlin/

martes, 14 de enero de 2020

El lenguaje de programación V

0


V provee código simple, legible y mantenible.

A pesar de ser simple, V le da mucho poder al desarrollador. Cualquier cosa que puedas hacer en otros lenguajes, puedes hacerlo en V.

V tiene o no tiene :
  • No nulo
  • No hay variables globales.
  • Sin valores indefinidos
  • Sin comportamiento indefinido
  • Comprobación de límites
  • Opciones / tipos de resultados
  • Genéricos
  • Variables inmutables por defecto
  • Funciones puras por defecto
  • Estructuras inmutables por defecto
  • Tan rápido como C
  • interoperabilidad con C sin ningún costo
  • Cantidad mínima de asignaciones
  • Compila a binarios nativos sin dependencias: un servidor web simple es solo 65 KB

V es un lenguaje de programación compilado, estáticmente tipado, diseñado para construir software mantenible.

Es similar a Go y también está influenciado por Oberon, Rust, Swift.

Veamos el "hola mundo" en V:

fn main() {
println('hello world')
}

Las funciones se declaran con fn. El tipo de retorno va después del nombre de la función. En este caso, main no devuelve nada, por lo que se omite el tipo.

Al igual que en C y todos los lenguajes relacionados, main es un punto de entrada.

println es una de las pocas funciones integradas. Imprime el valor a la salida estándar.

La declaración fn main () se puede omitir en programas de un archivo. Esto es útil cuando se escriben pequeños programas, "scripts" o simplemente se aprende el lenguaje.

Esto significa que un programa "hello world" puede ser tan simple como :

println('hello world')

// Esto es un comentario

/* Y ahora que lo saben, veamos ejemplos
   /* y esto tambien se puede hacer ... */
*/

fn main() {
println(add(77, 33))
println(sub(100, 50))
}

fn add(x int, y int) int {
return x + y
}

fn sub(x, y int) int {
return x - y
}

//La Funciones pueden retornar múltiples valores.

fn foo() (int, int) {
return 2, 3
}

a, b := foo()
println(a) // 2
println(b) // 3

/* Las funciones, como consts y tipos, son privadas de forma predeterminada. Para permitir que otros módulos los usen, anteponga pub. */

pub fn public_function() {
}

fn private_function() {
}

Las variables se declaran e inicializan con: =. Esta es la única forma de declarar variables en V. Esto significa que las variables siempre tienen un valor inicial.

El tipo de la variable se infiere del valor en el lado derecho. Para forzar un tipo diferente, use la conversión de tipo.

A diferencia de la mayoría de los otros lenguajes, V solo permite definir variables en las funciones. No se permiten variables globales (nivel de módulo). No hay estado global en V.

Veamos ejemplos :

mut age := 20
println(age)
age = 21
println(age)

Para cambiar el valor de la variable podemos usar =. En V, las variables son inmutables por defecto. Para poder cambiar el valor de la variable, debe declararla con mut.

Tenga en cuenta la diferencia entre: = y =
: = se usa para declarar e inicializar, = se usa para asignar.

Puff me quedo largo el post, en un rato sigo...

Dejo link:
https://vlang.io/

viernes, 1 de noviembre de 2019

Cual es el lenguaje más utilizado y el más moderno?

Es muy interesante saber cual es el lenguaje que más se usa hoy día, para poder aprenderlo si no lo sé y para saber por dónde anda el mercado.

Por eso dejo estas 2 imagenes que son por demás interesantes:


Otra cuestión es saber cual es el lenguaje más moderno de los más utilizados, porque es licito pensar que este tendrá mayor futuro : 




martes, 27 de agosto de 2019

Indice TIOBE de agosto

Hace rato que no publico el indice tiobe de lenguajes, veamos :






Como se puede ver Python va subiendo tranquilo, a mi entender esto viene de la mano de las tecnologías de machine learnig que cada vez están más presentes y todas las librerías están en Python.

Otro lenguaje que viene creciendo es Groovy, a mi entender gracias a Spring y pivotal

Dejo link:
https://www.tiobe.com/tiobe-index/

jueves, 15 de febrero de 2018

Top de lenguajes que tenes que aprender en el 2018



Me encontre un post sobre los lenguajes que debes aprender este 2018, si no lo sabes. Y en resumen los lenguajes son los siguientes :

  1. JavaScript
  2. TypeScript (si bien no es un lenguaje, es un framework que suma características a un lenguaje, por lo tanto es valido)
  3. Python
  4. Java
  5. Kotlin
  6. C & C++
  7. PHP
  8. Swift
  9. Scala
Lindo ranking veo algunos lenguajes viejos, pero salvo algunos puntos, estoy de acuerdo. 



miércoles, 10 de enero de 2018

Lenguajes de programación para aprender en 2018

Quiero compartir un excelente articulo sobre lenguajes de programación en 2018 (es decir este año)

Si bien el articulo no presenta mayor sorpresa, lista los lenguajes más populares de 2017 y que seguirán fuerte en 2018. Ojo aparece Scala (esto me llamo mucho la atención)

Yo empece el año con Crystal y se lo recomiendo porque esta muy bueno el lenguaje.

Dejo link: https://platzi.com/blog/lenguajes-de-programacion-2018/?utm_source=facebook&utm_medium=paidsocial&utm_campaign=pubetapa0

lunes, 16 de octubre de 2017

Los 15 lenguajes más utilizados en github

Leí un articulo sobre los 15 lenguajes más usados en github y no me lleve ninguna sorpresa, el primero es javascript. Sin duda el lenguaje más de moda en la comunidad open source.

Veamos todos:

RankLanguagePull Requests
1JavaScript2.3M
2Python1M
3Java986K
4Ruby870K
5PHP559K
6C++413K
7CSS335K
8C#326K
9Go285K
10C239K
11TypeScript207K
12Shell206K
13Swift107K
14Scala99K
15Objective C66K
Como dice el articulo: "De la lista anterior, podemos inferir que JavaScript es el lenguaje más utilizado entre los desarrolladores de todo el mundo, seguido por Python. GitHub mencionó que Python reemplazó a Java como el segundo idioma más popular en su plataforma, con un 40 por ciento más de solicitudes de extracción abiertas este año que el pasado."

GitHub también ha compartido algunos puntos de vista sobre la mayoría de las organizaciones y proyectos activos por la cantidad de colaboradores únicos, forks y comentarios. Y aquí están los datos sobre ellos.





Un vistazo a los datos anuales de GitHub:

  • 24 millones de usuarios totales
  • 1,5 millones de organizaciones
  • 67 millones de depósitos totales
  • 1 mil millones de compromisos públicos desde septiembre de 2016
  • 25,3 millones de depósitos activos desde septiembre de 2016
  • 1,3 millones de nuevas solicitudes desde septiembre de 2016


Dejo el articulo: https://curiouspost.com/list-15-popular-programming-languages-used-coders-github/

domingo, 8 de octubre de 2017

Swift 4 fue liberado



Este post llega muy tarde pero llego! Swift 4 fue liberado (hace rato)

Esta versión contiene muchos cambios y actualizaciones del lenguaje y la biblioteca estándar, especialmente las nuevas funciones de String, las colecciones extendidas, archivo y la serialización, entre otros.

En Swift 4 las cadenas son colecciones propiamente dichas por lo cual son directamente iterable y proporciona todos los métodos de las colecciones y las secuencias, por ejemplo:

for c in myString {
  print(c)
}
myString.filter { c in
  return boolCheck(c)
}
let l = myString.count
let myString2 = myString.dropFirst()

Otra nueva característica es que ahora los string soportan Unicode 9 and literales multi-lineas.

Swift 4 también mejora la forma en que puedes crear, usar y administrar tipos de colecciones, como Dictionary y Set.

En primer lugar, ahora puede crear un diccionario a partir de una secuencia de tuplas, así como especificar cómo manejar los duplicados, si los hay, tanto al crear un diccionario como al fusionar dos diccionarios:

let items = ["ItemA", "ItemB", "ItemC", "ItemA"]
let prices = [14.40, 41.63, 3.71, 15.63]
let catalog1 = Dictionary(uniqueKeysWithValues: zip(items, prices))
let catalog2 = Dictionary(prices, uniquingKeysWith: { (l, r) in
    l })
let catalog3 = Dictionary(prices, uniquingKeysWith: { (l, r) in
    l + r })
let merged = catalog.merge(catalog3) { (l, r) in r }

Dictionary y Set ahora se puede filtrar en otro  tipo, en lugar de en un Array. Además, los diccionarios soportan un nuevo método mapValues:

let catalog4 = catalog.filter { $0.value < 15.0 }
let catalog5 = catalog.mapValues { $0 * 1.2 }

Otra característica útil en los diccionarios es la posibilidad de especificar un valor predeterminado al acceder a sus elementos:

let price1 : Float = catalog['none', default: 0.0]
let price2 : Float? = catalog['none']

Swift 4 añade serialización a todos los tipos a través del protocolo Codable. Por ejemplo:

struct Card: Codable, Equatable {
    enum Suit: String, Codable {
        case clubs, spades, hearts, diamonds
    }

    enum Rank: Int, Codable {
        case two = 2, three, four, five, six, seven, eight, nine, ten, jack, queen, king, ace
    }

    var suit: Suit
    var rank: Rank

    static func ==(lhs: Card, rhs: Card) -> Bool {
        return lhs.suit == rhs.suit && lhs.rank == rhs.rank
    }
}
let hand = [Card(suit: .clubs, rank: .ace), Card(suit: .hearts, rank: .queen)]

Por ultimo, Swift 4 tiene dos modos, seleccionados a través de la opción -swift-version compiler. En el modo Swift 3.2, el compilador aceptará la mayoría de fuentes compatibles con los compiladores Swift 3.x. En este modo, la mayoría de las características del lenguaje Swift 4 estarán disponibles, pero las actualizaciones de las API existentes anteriormente no. En el modo Swift 4.0, obtendrá acceso a todas las funciones de Swift 4, a expensas de algunos cambios de origen, que como de costumbre pueden manejarse utilizando el asistente de migración de Xcode.

Ojo!! Hay mucho más para Swift 4.

Dejo link:
https://www.infoq.com/news/2017/09/swift-4-official-release
https://swift.org

miércoles, 17 de mayo de 2017

Swift 3.1 se viene con todo

Swift 3.1 se viene con todo, mejoras en el lenguaje, mejoras al sistema de paquetes y mejoras en implementación en Linux!!

Como mejora al lenguaje 2 nuevas incorporaciones: prefix y drop (prefijo y postfijo) los cuales permiten recorrer una colección:

let subseq = s.prefix(while: {$0 < m}).drop(while: {$0 < n})

Como podemos ver devuelven la subsecuencia obtenida por la eliminación o inclusión de los elementos iniciales de una secuencia mientras que un predicado dado es verdadero.

Swift 3.1 también agrega una serie de inicializadores de conversión para todos los tipos numéricos, incluidos los tipos Int, Float y Double, que producen un resultado correcto o devuelven nil. Los inicializadores disponibles, tienen por objeto mejorar la conversión de datos. Todos los tipos numéricos tienen por lo tanto un nuevo inicializador que utiliza la palabra clave exacta, por ejemplo:

init?(exactly value: Int64)

Con licencia Apache License, Version 2.0. Swift se esta volviendo un lenguaje cada vez más poderoso.

Dejo link: http://swift-lang.org/main/

miércoles, 21 de septiembre de 2016

Swift 3 fue liberado



Swift 3.0 ha sido liberado, escribe ingeniero de Apple, Ted Kremenek, y trae consigo una  gran cantidad de cambios en el lenguaje y su biblioteca estándar.

Swift 3 es la primera versión principal de Swift, desde que es código abierto. Y con esta versión llegan grandes cambios.

Además esta versión trae un sistema de paquetes para Linux.

Dejo link: https://swift.org/blog/swift-3-0-released/

domingo, 15 de mayo de 2016

Introducción a la Programación con Swift


La universidad de Toronto dicta un curso sobre Swift por medio de coursera. Es bastante interesante dado que no he visto muchos cursos de swift gratuitos.

Si bien es gratuito para obtener el certificado se debe pagar un pequeño arancel.

Dejo link: https://www.coursera.org/learn/swift-programming

lunes, 7 de marzo de 2016

App Evolution With Swift

La gente de codescholl nos regala otro curso, se llama "App Evolution With Swift". Este curso nos cuenta como desarrollar con swift aplicaciones para IOS.

Dejo más info:

COURSE OVERVIEW
  1. Level 1 App Evolution With Swift Badge

    LEVEL 1 FREE LEVELXcode and Storyboards 2 Videos | 7 Challenges

    Explore how to lay out your application's interface with storyboards.
  2. Level 2 App Evolution With Swift Badge

    LEVEL 2 FREE LEVELOutlets and Actions 2 Videos | 7 Challenges

    Learn how you can use storyboard outlets and actions to connect view objects to code.
  3. Level 3 App Evolution With Swift Badge

    LEVEL 3 FREE LEVELScroll Views 1 Video | 3 Challenges

    Discover how you can display more content than what fits on 1 screen with scroll views.
  4. Level 4 App Evolution With Swift Badge

    LEVEL 4 FREE LEVELTable Views 2 Videos | 6 Challenges

    Find out how you can use table views and table view controllers to efficiently display lists of content.
  5. Level 5 App Evolution With Swift Badge

    LEVEL 5 FREE LEVELNavigation 3 Videos | 10 Challenges

    Learn how to use navigation controllers to connect multiple screens and pass data between them.
  6. Level 6 App Evolution With Swift Badge

    LEVEL 6 FREE LEVELCustom Classes for Data 1 Video | 1 Challenge

    Explore how to create separate classes for your data and then pass them between view controllers during transition segues.

Dejo link:
https://www.codeschool.com/courses/app-evolution-with-swift

jueves, 7 de enero de 2016

Swift le gano a Objective-C en el indice TIOBE.



Todos recuerdan el indice TIOBE, es un indice que muestra los lenguajes más usados y en el mes de diciembre Swift paso a Objective-C.

Que tiene de especial esta noticia?

Bueno, es la primera vez que queda claro que el publico esta más interesado en Swift, que en Objective-C y me parece natural. Por lo tanto si queres programar en la plataformas de Apple, ponete a estudiar Swift.

Dejo link:
http://www.infoq.com/news/2016/01/swift-overtakes-objective-c

viernes, 4 de diciembre de 2015

Apple hace Swift Open Source y así llega a Linux


Swift el cual fue creado para el desarrollo de aplicaciones para iOS y OS X, ya es Open Source. Apple lo ha liberado bajo licencia Apache y lo ha puesto a disposición de la comunidad en un nuevo portal que, tal vez por el interés de la novedad, se va cayendo a ratos toda la tarde.

Desarrollado originalmente por Chris Lattner, director del área de herramientas de desarrollo en Apple, además de autor y coautor de otras importantes piezas de software como LLVM o el compilador Clang, Swift (por supuesto, goza de integración con LLVM/Clang) se dio a conocer en 2010, aunque no fue hasta el año pasado que Apple lo lanzó oficialmente. Ahora, y siguiendo los planes adelantados a principios de junio, Swift renace como un nuevo lenguaje Open Source.

A partir del código fuente de Swift es posible su compilación para cualquier plataforma, aunque el soporte directo le llega en esta primera hornada solo a Linux, para el que se ofrecen instaladores genéricos y para Ubuntu 15.10. Más información sobre Swift en la página oficial de Apple y en el nuevo portal.