Crea una APP iOS y Android con KOTLIN MULTIPLATFORM
HTML-код
- Опубликовано: 26 май 2024
- Kotlin Multiplatform, la última alternativa de JetBrains y Google para crear aplicaciones multiplataforma para iOS y Android, ya se encuentra en su versión estable. Vamos a dar los primeros pasos en este tutorial.
💻 Directos de lunes a viernes desde / mouredev
💬 Únete al servidor de la comunidad en / discord
🔗 Todos mis enlaces de interés en moure.dev
#KotlinMultiplatform #Android #iOS
Excelente demostración, eres un crack Mau!
Se ve interesante. Tiene potencial, y con que Android sea nativo por default es un golazo. Ahora mismo se ve bastante verde, esperemos evolucione bien. Soy programador Flutter, pero me encanta aprender cosas nuevas!
Excelente, ya era hora!!
Hola hola, mi querido Brains 🤭🤭
Gracias por este vídeo, estoy muy interesado desde hace rato y he estado haciendo uno que otro tutorial al respecto, pero tu vídeo me ha servido para motivarme y entrarle más de lleno. Mil gracias compadre por compartir
Grande Mau, gracias por este video super útil para todo aquel interesado en kmt
Crecio?
Uff excelente video y muy necesario en la actualidad
Gracias por el contenido, Brais.
Buenisimo!
Yo ya trabajo con KMP y va muy bien. La mayor parte de lógica de negocio (capa data y business) en KMP y la parte visual propia para cada plataforma de Android y iOS. Faltan librerías de KMP, pero poco a poco van saliendo.
No queria comprar una mac, pero esta tecnologia me convencio tanto
Me quedo con Flutter, que multiplataforma es esa, donde tienes que escribir el doble.
Pero no siempre con los mismos resultados. Si no sólo existiría Flutter y nadie usaría el resto de opciones :)
por el momento si.
Soy react native dev, pero aun no ve el video y ya me parece interesante
aguante Kotlin Multiplatform!
Me da la sensación que es lo mismo que desarrollar independiente para cada plataforma pero de manera más ordenada.
Personalmente prefiero tener un sólo código con una UI personalizada según la identidad de la empresa
con KMM se puede un solo codigo y mas optimizado
Qué barbaridad, creo que me acaba de explotar la cabeza😂,personalmente sigo prefiriendo para desarrollar aplicaciones para iOS Swift. El manejo de tantos ficheros me parecen un poco lío
ohhhh buen video
Pense cambiarme a kotlin para desarrollo nativo pero con esto, me cambio a kotlin fijo
Entrar a un video de kotlin y no ver un comentario de Flutter es como no entrar a un video de Kotlin
totalmente de acuerdo contigo...
Y cual es la relación de KMP con Flutter? 🤔
@@oscarvera7263 Ambos estan apoyados por Google / ambos son multiplataforma y parece que Google esta dando el apoyo mas a Kotlin, pero el desarrollo es mas amigable en Flutter, entonces... Si pues eso. genera ruevelta en la comunidad.
@@oscarvera7263 es porque últimamente ha habido mucha controversia con Flutter ahora que Google está priorizando el desarrollo de KMP y eso ha ocasionado que las comunidades tanto de Kotlin como la de Flutter se paren enfrentando en todos lados 😅
no lo se, dimelo tu@@oscarvera7263
Excelente video y me gustaria que vuelvas a usar estos entornos y no siempre trabajando en web
Excelente video, justo ahora que empezamos con clima helado esta muy bueno para calefacciónar la casa con el PC 🤣🤣
esto no es para gente pobre hahaha
gracias maestro
Hola buenas no esta muy claro no se alcanza a ver la parte de ejecucion e implementacion en el video! podrias mejorarlo!
Hola Moure, me gustaría saber si es mejor utilizar Kotlin o Fluter para hacer una app multiplataforma en 2024, y hacia donde tiende el mercado de la programación de apps multiplataforma?
X2 tengo esa misma duda
Creí iba ser como Flutter, pero es más relajo para hacer lo mismo, bueno si toca aprender esto toca xd
Alguien me puede confirmar que no existe documentacion para la implementacion en PC de jetpack compose?
Si en la documentación de jetpack compose multiplatform no encuentras podrias preguntar en el canal DevExpert se dedica kmp.
La verdad veo que la idea es tener todo en un mismo proyecto, que no lo veo viable a nivel server, pero entre Android y iOS la verdad parece mas simple tener los proyectos separados y que cada uno implemente la lógica de llamado a API que requiera, también esta que a nivel APP las validaciones de lógica que se comparten no son extremadamente complicadas por lo que tener dos proyectos se ve mas ordenado y viable.
Ahora bien si hablamos de costos para los equipos y que solo se codifique dicha Lógica interna de las APP ( que ya dije no son extremadamente complicadas ) si es viable ya que reduce los costos y los tiempos de desarrollo
Si la idea es mostrar multiplataforma, hubiera sido bueno mostrar como un UN codigo se crean las dos plataformas. La idea seria que si yo solo se KMP ,pueda trabajar para las dos plataformas (mas halla que siempre esta bueno saber lo nativo). Pienso que si te contratan para dev KMP sera para hacer todo un solo codigo, no para hacer parte ios parte android.
Igualmente esta buena la posibilidad de hacer la logica en conjuto y los ui separados pero la idea tendria que ser siempre hacer todo en uno
Excelente video, estaba esperando este tutorial.
No se puede programar kotlin multiplataforma usando linux o windows?
Se puede con Android Studio, pero te limita la simulación de IOS.
El vocalista de system of a down
Like si prefieres Flutter
Por el momento si diego.
No pienso abandonar Flutter, o al menos no intencionalmente, hace años solo programaba Android primero con Java y luego Kotlin, hay que reconocer que Kotlin como lenguaje es en mi opinión superior a Java al menos programando en Android, pero el crear una interfaz única para todas las plataformas con Flutter no tiene competencia con crearlas nativas. Mientras Flutter siga vivo con él me quedo
pls, Diego no mendiges likes, Yo estaba programando en React con AstroJs, y hayer volvi a Actulizar Flutter y dart, para darle duro y parejo, las personas sabemos que queremos y con queremos desarrollar nuestras StartUp, y me jode que un programador de alto nivel y reconocido como tu este comentando en Videos de otrsa plataformas pidiendo like para Flutter, no lo agas, las gente sabe que tecnologuia elejir, Thanks
@@tuntundev- Hes ke a 100 likez me dan un bono $
@tuntun99 no creo que esté Diego mendigando like, pero es la realidad, más bien quienes andan mendigando likes son quienes se han aprovechado para hablar del tema y decir que Flutter va a morir
@mouredev recomendarías a alguien que trabaja con Kotlin, comenzar a usar K multiplaform? Tengo una nueva oferta de trabajo y no sé qué hacer. Gracias por tu respuesta.
Sí ya trabajas con Kotlin, seguramente sea una buena apuesta de futuro
Que cual es mejor? Android vs IOS, Flutter vs RN, Windows vs MAC, solo los tontos discuten por eso, las personas listas como yo usamos todos conforme a la necesidad.
Básicamente el sueño de multiplatform es llegar a ser Flutter 😂
pero es flutter xd
Solo que Flutter no es nativo ni en web(como js con React Native) ni en mobile(como kotlin con kotlin multiplatform) también me preguntaba que si ya esta Flutter para que hacer lo mismo con kotlin pero pues la opción de que sea nativo en un nicho vale más al parecer (y escalarlo a multiplataforma)
O llegar a ser React Native, y pronto seguro que sacarán algo como Expo
Tanto código para hacer algo tan simple, no quiero imaginar entonces lo complicado y complejo cuando sea un sistema empresarial, en cierta forma Flutter es más factible pero el mejor es Delphi.
Necesito que alguien me recomiende como puedo ejecutar iOS en Windows para probarla (no puedo disponer de un dispositivo ios :( y quiero desarrollar mi aplicación en multiplataforma).
puedes buscar cómo instalarte un dispositivo virtual de ios
@@josuep326 pero en una máquina virtual o hay alguna manera de que lo pueda ejecutar desde flutter de visual studio?
Muchas gracias Señor de la Barba....
No es mejor usar Fleet en vez de Android studio?
es de pago, por ahora el beta es gratis
Hola, puedes explicar por fa como hacer para tener el emulador de IOS allí en Android Studio porfa 🙏🙏
Necesitas un Mac
Escribir dos veces el codigo para que funcione en uno o en otro no lo veo como multiplataforma...solamente que utilizas un mismo lenguaje para los dos es el unico beneficio
Hay ejemplos de ambos en el tutorial. Con la API solo es uno. De lo que se trata es que eliges qué necesitas en cada caso.
Desde lejos se ve mas practico .NET maui ( open source ), ya que solo tendrías que aprender .NET C#, para hacer lo mismo , sin necesidad de aprender Swift y kotlin. En esta version se ve engorroso, MS Visual studio 2022 community es muy potente, no se si al nivel de android studio, pero se ve mas poderoso..
Pensé pasarme a Flutter pero estaba en duda, pero con Kotlin me voy de una
Es programar dos veces en una sola carpeta del proyecto
Eso mismo lo haces en flutter en 5 min. y sin contar el hot reload
Eso es porque KMP aún está verde, pero de aquí a unos años probablemente puedas hacerlo en 5 min en ambas tecnologías, la diferencia será en que podrás tener con una de ellas gran parte del desarrollo en Nativo (Mucho mejor rendimiento). Creo que la respuesta será obvia en cuanto a cuál será la mejor opción.
muy buen video gracias, pero creo que con kotlin multiplatform estan llegando 6 años tarde a competir en una necesidad que ya esta satisfecha con cordova y hasta los engine de video juegos (ej: godot engine) ya se puede hacer multiplataforma (si bien no de forma nativa, con un muy buen rendimiento) y todos estos son mas accesibles, faciles y usables para un "programador promedio".
satisfecha con cordova, no mames hahahahahahaha
Es ver el ecosistema de React Native, solo que seguramente no hay que comprar el IDE
mmmm creo que mejor me quedo con flutter
Usted es un capo, pero, la parte mala es utilizar base de datos, inyección de dependencias, viewmodel y la comunicación http, porque, ninguno de estos utiliza la "versión oficial", entonces es un lío. Por ahí es menos trabajo la "versión oficial".
Creo que con ktor al menos se pueden consumir servicios rest
@@pedroparra2399 Se podría, cuándo yo intenté, me daba error por todos lados, claro, retrofit mvvm hilt, está aceitado y no hay mucha complicación, lo importante es que según entiendo, uno es en ejecución y otro en compilación, siendo esto último una gran ayuda ante los errores, por lo menos para mí.
Con ktor puedes hacer eso, yo lo uso y no tengo problema,
¿Un clavo más en el ataúd de Flutter?
Pues hasta que esté maduro , me voy con Expo por ahora , cumple los requerimientos que necesito , demasiada abstracción para una llamada a una API si les soy honesto
Lo unico que veo es: mejor lo hago todo en nativo. 😅😅😅. Igualmente lo estoy aprendiendo para tener una alternativa.
Se acuerdan de Xamarin, ese la misma idea, en que cambia?
Eh... No lo es (ni de lejos) ¿Qué cambia? Todo, desde la separación multiplataforma por capas, a que para android es Nativo puro o que lo apoya la propia Android. Todo lo que no ha tenido Xamarin en su día...
@@mouredevtv no se si conociste xamarin native, es lo mismo, en uno usas C# y en otro Kotlin, en ambos puedes compartir logica de negocio haciendo uso de la inversion de dependencia, y las interfaces de usuario pueden ser en android o swift. A mi parecer es la misma propuesta pero quizas me equivoco.
UN UNICO LENGUAJE PARA CONTROLARLOS A TODOS
Para mi la multiplataforma es un único lenguaje y que se ejecute en cualquier dispositivo...
Eso hace. Sólo que aquí tu decides en qué usar la multiplataforma.
Nose, para mi flutter traerá sorpresas, y es que dejar flutter es dejar morir a Dart
Dart es un asco amigo por eso Flutter nunca va a despegar, es un lenguaje de juguete
Que tal Flutter trabaje no solo con Dart si no también con kotlin
Me interesa ...
Para usar K.M mejor termino desarrollando nativo.
Amigo en Android no tienes que hacer nada, y para iOS en tu decisión, esto es una alternativa que todavía está en pañales y si quieres lo aprendes, yo se nativo de ambos pero prefiero aprender de todo
Pues en android ya tiene planes de hacer nuevos proyecto así, revisando un articulo parece que con cambiar algo en el gradle una app android pasaría fácilmente a multiplatform y ya depende de uno si desea también implementar para ios, desktop o web o te quedas únicamente en android
Definitivamente se ve (sobretodo porque la parte common no está ni estructurada en este video al menos con clean architecture) mucho más saturado/rebuscado lleno de instrucciones de código que te quedas pensando: 'wey! en flutter pese a no ser native todo eso se hace más sencillo y con menos lineas de código, incluso en los imports" pero claro! ésto es culpa de que es hijo de Java o de la jvm, que por cierto siempre me pareció igual: java es DEMASIADO código para hacer muy poco, en contraste con C# que con poquito haces mucho
Entonces se recomienda pasar los proyectos de flutter, y comenzar a aprender kotlin?
React native por su falta de mantenimiento a los recursos se podría decir que está quedando atrás?
Alguna otra recomendación que quieran dar tanto para los nuevos devs, como los experimentados?
GRACIAS!
KMP Junto a CMP van a dejar deprecado a Flutter, cual es el punto de aprender flutter si hay una herramienta que hace lo mismo pero generando codigo nativo en Android y utilizando los mismos conocimientos ? Pero aparte de la app en Android, te la hace en IOS de paso ? Aparte de que Kotlin es un lenguaje que es más amplio y más soportado (todo lo contrario a Dart).
En cuanto React native, es extremadamente ineficiente (por usar Bridges) no sirve a no ser que tengas un programador web y Quieras re-hacer tu app una vez que tu empresa se vuelva más grande
@@leonelp9593 Yo dirira que son dos muy buenas opciones, yo seguire desarrollando en Flutter pues a mi parecer ya es estable y aun puede tener mas actualizaciones, depende de gustos, a mi me encanta mas el framework de Flutter y programar en Dart es mas sencillo y directo que Kotlin
@@henryvilla5358eh? Tengo que usar freezed para generar mis modelos más complejos de las sealed class para usr en bloc, en kotlin una data class y sealed class y pare de contar no tengo que usar ningún paquete externo que además toca recopilar todo el tiempo si creo una nueva propiedad, la verdad no se donde se ve que dart es más sencillo en kotlin, lo único que veo más sencillo en dart es la concurrencia de los future y async vs las corrutinas por el resto kotlin es as sencillo de usar
@@henryvilla5358 Pues en kotlin cuando quiero hacer modelos para el estado de la ui mas complejos hay sealed class y data class y se arma sencillo todo modelo y estado para implementar el patron result, en dart no es posible hacerlo sencillo porque las sealed class no permite idenficar la variancia y contravariancia y toca usar el paquete freezed para lograrlo que crea ficheros extras con todo el boilerplate porque hacerlo manual es insufrible, en lo unico que dart es mas sencillo que kotlin es en la concurrencia por el future y async a diferencia de las corrutinas y los dispatchers, en lo demas kotlin es mas sencillo que dart
Si te gusta flutter sigue nomas, kmm seria una alternativa mas, basicamente es: proyectos grandes con mucha integracion de hardware y ultimas novadades del sdk entonces kmm, proyecto pequeños o medianos donde el objetivo es unicamente mostrar info del backend y no se requiere trabajar de manera exaustiva con el hardware o las ultimas novedades del sdk entonces flutter es mas que suficiente, personalmente pienso que react native es el que sobra aqui y no le veo el sentido de su uso mas alla de algun web deb que tenga que hacer una version movil del sitio web
Y así murió Flutter, vivió poco el pajarito
Confirmadisimo a mi patecer que flutter va a desaparecer, y habra quien diga que no y eso pero bueno alla ellos
argumente su respuesta
@@brayanguerrero8093 que igual que flutter ahora kotlin se pondrá popular para el desarrollo de apps multiplataforma, solo por hype, no te diste cuenta que la mayoría de las tecnologías salen y se usan solo por hype?
Básicamente hype, flutter creció por la boca en boca, tambien por youtubers que hacían cursos por ello, ahora igual que acá, aparecerán cursos de kotlin, por ende el hype, por último se terminará olvidando la gente de flutter
@@user-xs4th5rm6wflutter es muy facil de aprender y de comenzar a crear, por eso creció mas que por los tutoriales
De momento no lo veo realmente multiplatform, al final tienes que realizar las 2 implementaciones, aunque uses la misma interfaz; y la parte gráfica también tienes que implementarla por separado, porque de momento esta en beta la común.
No le veo ventajas frente a otros frameworks como React Native, que con el mismo lenguaje (javascript) te creas la lógica y la parte visual que es común para todo (Android, iOS, web). Y te permite crear lógica o pantallas especificas para cada plataforma, si quieres que sean distintas.
La única ventaja es que es más nativo que javascript y por tanto tendrá más rendimiento... ya veremos con el tiempo como avanza.
Gracias por el video :)
Tanta cosa para multiplataforma? se ve muy tedioso
Yo creo que quedó tedioso por el tutorial de JetBrains más que porque lo sea en realidad.
Es programar dos veces en una sola carpeta de proyecto 😂
Mi primera chamba (Kotlin)
@moureDev lo utilizarias para apps grandes
Esa es mi intención a futuro
Lo que no me gusta mucho de los proyectos Android es que tienen 8372946920 archivos xd