Entrevista con el padre de Move: ¿Por qué el lenguaje de contratos inteligentes Sui Move es adecuado para construir productos Web3?
Recientemente, hablamos con Sam Blackshear, el director técnico de Mysten Labs y creador del lenguaje de programación Move, sobre por qué desarrolló Sui Move, un nuevo lenguaje de programación de contratos inteligentes, las capacidades de escalabilidad de Sui y los beneficios de la tecnología descentralizada para los constructores.
A continuación se presenta el contenido de esta entrevista:
Q1, primero, ¿puede resumir qué es un lenguaje de programación, cuáles son las cualidades más importantes que los desarrolladores consideran al elegir un lenguaje de programación, y qué le impulsó a desarrollar su propio lenguaje de programación?
Un lenguaje de programación es una herramienta para interactuar de manera amigable, segura, eficiente y clara con las computadoras. Esto es especialmente importante para las computadoras. No podemos comunicarnos con las computadoras en lenguaje natural porque el significado completo del lenguaje natural es rico y expresivo.
En los lenguajes de programación, lo más importante es tener una semántica definida con precisión. Cuando escribes un programa, sabes exactamente qué va a hacer. Si haces un pequeño ajuste, sabes qué resultado va a producir ese cambio.
Yo creo que, a diferencia del lenguaje natural, la esencia de los lenguajes de programación está dirigida a un campo específico o a una tarea específica. De lo contrario, solo se necesitaría un lenguaje de programación para completar todas las tareas. Pero la razón por la que existen múltiples lenguajes de programación es porque no puedes sobresalir en todos los campos. Están trabajando para dirigirse a áreas problemáticas específicas y se centran en resolver esos problemas.
Por lo tanto, la historia de Move es muy similar a esto. Cuando lo creé, no fue con la intención de crear un nuevo lenguaje. Los desarrolladores al elegir un lenguaje se preguntan: "¿Es este lenguaje adecuado para la tarea que quiero realizar?" Pero creo que puede ser más importante: "¿Este lenguaje tiene una gran comunidad? ¿Hay muchas bases de datos disponibles? ¿Hay muchos programadores usándolo? ¿Hay buenos recursos educativos?" Todo esto es muy importante, por lo que la barrera para crear un nuevo lenguaje debe ser muy alta.
Q2, ¿puede compartir más información sobre el desarrollo de Move?
Move se originó en el proyecto Libra de Facebook. Mi tarea en ese momento no era crear un nuevo lenguaje, sino que "Libra necesitaba tener contratos inteligentes, así que averigua qué deberíamos hacer". Miré una variedad de cosas. ¿Podemos usar Solidity en EVM? ¿Deberíamos usar un lenguaje de propósito general, como WASM o JVM, y aplicarlo a Libra? ¿O deberíamos crear algo propio?
La decisión de crear nuestras propias cosas se basa en el estudio de los contratos inteligentes existentes, entendiendo lo que los programadores intentan hacer, así como en los aspectos en los que ciertos lenguajes les ayudan y les decepcionan. Mi conclusión es que, en muchos casos, los lenguajes de contratos inteligentes existentes realmente les decepcionan.
Esto se puede ver claramente en el mal historial de seguridad de Solidity, pero más fundamentalmente, estos contratos inteligentes no son el tipo de programa muy tradicional. Solidity no es un lenguaje construido para lo que la gente está haciendo ahora.
Por lo tanto, estos contratos inteligentes son muy simples, básicamente hacen dos cosas. Definen el tipo de activo, incluyendo cuándo se puede transferir el activo, qué se puede hacer con él, quién puede leerlo y las reglas sobre quién puede escribir en él. Y revisan la política de control de acceso para determinar quién posee el activo, quién tiene permiso para usarlo y quién tiene permiso para operarlo. Todo gira en torno al activo, y deseas que estos activos tengan las mismas propiedades que los activos físicos.
En los contratos inteligentes existe el concepto de propiedad y transferencia de propiedad, pero en una computadora, todo son solo dígitos y bytes, y se pueden copiar libremente. Además, sabes que estos conceptos no existen en el mundo real. Por lo tanto, deseas un lenguaje que te proporcione una buena abstracción sobre la propiedad y la homogeneización. Al igual que en el mundo real, pero sin obligar a los programadores a reinventarlo. Deseas obtener garantías básicas de seguridad.
Esta es la función de Move y por qué finalmente creamos este nuevo lenguaje. Estas tareas son fundamentales para la programación de contratos inteligentes. Son difíciles de recrear en otros lenguajes, incluidas las lenguajes de contratos inteligentes existentes, y queremos diseñar todo el lenguaje en torno a proporcionar estas funciones básicas, para que los programadores puedan escribir código de manera segura y eficiente, sin tener que reinventar la rueda cada vez que quieren escribir algo de código.
Q3, Sui utiliza una variante de Move, llamada Sui Move. ¿Qué motivó estos cambios? ¿Qué características de Sui Move son especialmente adecuadas para construir productos en Web3?
Los siguientes factores impulsaron estos cambios, uno de ellos es que el objetivo inicial del proyecto Libra era construir una red de pagos conforme. Por lo tanto, intentamos diseñar Move como un lenguaje universal. Pero también hicimos algunas cosas de manera consciente, ya que Libra quería tener restricciones. Una de las cosas importantes es que no querían que las personas pudieran enviar ciertos activos a cualquier lugar. Querían que las personas crearan explícitamente una cuenta y establecieran algunas reglas al crear la cuenta, como que el propietario de la cuenta debía realizar la verificación KYC. O podría ser necesario pagar una tarifa para crear la cuenta, o solo un pequeño grupo de personas con permiso para crear cuentas podría hacerlo. Dado que el objetivo general es que Libra desea realizar pagos conformes y contratos inteligentes conformes, existen estas restricciones. Pero en el ámbito más general de Web3, es todo lo contrario. No quieres que haya conformidad en el nivel básico, esa es la idea de los contratos inteligentes. Quieres que las cosas sean lo más libres posible, y que puedas enviar algo a cualquier dirección. Luego, no deberías realizar una creación de cuenta explícita, ya que esto bloquearía varios casos de uso. Este es un factor importante.
Otro factor es que, aunque nos centramos en los activos en Move, en ese momento no consideramos cómo introducir el enfoque en los activos en sí en la transacción dentro de Libra. Por lo tanto, cuando llegas al nivel de la transacción, todavía tienes esta API, en la que introduces números y valores booleanos y cosas que no son activos, y luego en Move, usas esos números para extraer activos de la cuenta y realizar otras operaciones. Resulta que la mayor parte del código que ejecutas es este trabajo de contabilidad molesto, que implica sacar esta cosa, sacar aquella cosa, sacar otra cosa, bien, tengo todos los activos que quiero. Están aquí, en mi estudio, ahora puedo comenzar a hacer algo significativo. Luego, al final de este proceso, podrías decir: "Bien, devuelve estos activos a esta cuenta, devuélvelos a aquella cuenta, reorganízalos."
En Sui, hemos reflexionado profundamente, si cada programa comienza y termina de esta manera, ¿podemos abstraerlo? Por lo tanto, la lógica para manejar transacciones hará que sea más fácil para los programadores completar esta tarea, desde la perspectiva del programador, solo necesitan preparar los activos necesarios y comenzar de inmediato a trabajar en cosas interesantes. Este es el modelo de datos orientado a objetos que existe en Sui. En el Move original, teníamos un modelo de datos basado en cuentas, los activos se almacenan bajo la cuenta, y los programadores deben extraerlos explícitamente. Y en Sui, cuando entran en la parte de Move de la transacción, los activos ya han sido adquiridos por el tiempo de ejecución de Sui. Esto es más conveniente para los programadores, ya que no necesitan realizar todo ese trabajo contable antes y después, y también es el secreto que nos permite determinar, sin ejecutarlo realmente, si una transacción se puede ejecutar en paralelo con otra, escalar Sui horizontalmente y realizar otras algunas operaciones de manera más eficiente.
También hemos realizado otros trabajos muy interesantes, como el uso de modelos de datos basados en objetos para bloques de transacciones programables. Este es un tema bastante técnico, y estoy encantado de discutirlo en profundidad. Pero estos dos factores son el principal impulso que lleva a la divergencia con el Move original.
Q4, ¿podría compartir más información sobre los bloques de transacciones programables y sus funciones?
Me gusta usar una analogía para explicar, otras blockchains son como la zona de comidas de un centro comercial. Si quieres un helado, vas al puesto de helados y sacas tu tarjeta de crédito para pagar. Pero si decides que también quieres una hamburguesa, entonces vas al puesto de hamburguesas y pagas de nuevo. No soy una persona glotona, pero si quiero comer ocho cosas, tengo que hacer ocho transacciones separadas. Sui es más como un buffet, donde cada transacción no es solo una cosa. Una vez que pagas el costo del buffet, puedes hacer muchas cosas sin gastar más. Puedes comer helado, puedes comer hamburguesas, puedes mezclar ambas.
Para hacer que este concepto sea más concreto, en un caso simple, si deseas enviar 100 transacciones para acuñar 100 NFT, puedes enviar una transacción que acuñe 100 NFT. El costo de esto es casi el mismo que el costo de acuñar un NFT. También puedes realizar empaquetado de transacciones heterogéneas, por ejemplo, la primera transacción en el bloque retira un personaje de Mario de tu billetera multifirma, mientras que la segunda transacción solicita un Mario y te permite jugar. Si ganas el juego y obtienes un trofeo, tal vez la tercera transacción coloque el trofeo en una vitrina compartida con amigos. Lo genial es que los bloques de transacciones programables permiten a los programadores escribir código de esta manera, el juego no tiene que saber cómo se almacena la billetera multifirma o Mario, tampoco tiene que saber sobre tu vitrina o su implementación.
Los bloques de transacciones programables están compuestos por transacciones que tienen objetos de entrada y salida. Si necesitas un objeto de entrada, puedes obtenerlo sin preocuparte de dónde proviene, y luego pasar su salida al objeto que lo necesita, sin necesidad de preocuparte de a dónde se pasará. En otras blockchains, la acoplamiento es más fuerte, por lo que los juegos deben integrarse con billeteras multifirma y vitrinas de trofeos, o todos deben implementar alguna interfaz común y tener un acoplamiento más fuerte. Sui facilita lo que se llama combinación temporal. Así, si las tuberías coinciden, podemos completar en una transacción.
Q5, ¿cuáles son los beneficios de los bloques de transacciones programables para los usuarios?
Para los usuarios, los beneficios de los bloques de transacciones programables incluyen tarifas de gas más bajas, ya que puedes agrupar todas las operaciones en una sola transacción en lugar de realizar transacciones por separado. Además, el número de aprobaciones necesarias también se reduce. Si el sistema que utilizas requiere aprobación de transacciones, solo necesitas realizar una aprobación y luego se completarán todas las operaciones de una vez. Otro beneficio es la atomicidad; si deseas realizar tres cosas diferentes y quieres que la tercera operación solo tenga éxito si las dos primeras operaciones son exitosas, no podrás lograrlo si esas operaciones deben ser transacciones independientes. Sin embargo, si puedes agruparlas en una sola transacción, podrás hacerlo fácilmente.
Q6, He oído que usted y otros han comentado que desarrollar en Sui es una gran experiencia para los programadores, y esto es muy importante. ¿Tiene alguna anécdota que compartir sobre la experiencia de programadores Web3 experimentados y nuevos al comenzar a usar Sui Move?
Para los desarrolladores que provienen de otros lenguajes de programación Web3, su experiencia de desarrollo en Move y Sui Move es realmente más eficiente y segura. Acabo de participar en un programa de pódcast sobre Bucket Protocol, que están construyendo un proyecto DeFi muy interesante en Sui. Al mostrar la arquitectura del sistema, explicaron cómo los diferentes componentes trabajan en conjunto. Dijeron que si hubieran escrito este proyecto en Solidity, podría haber tomado ocho meses, pero con Sui Move solo tomó dos meses, y tienen mucha confianza en su seguridad. La forma en que funciona este lenguaje se acerca mucho a la idea del portafolio de proyectos que tienen en mente. En el ámbito de Solidity, esa conexión no es tan directa.
Este es solo un ejemplo, pero hemos escuchado muchas situaciones similares, donde las personas dicen que su velocidad de desarrollo en este lenguaje es más rápida y se sienten más seguras al finalizar. Me alegra escuchar eso. Pero, en cierto modo, no es sorprendente; estudiamos Solidity y entendimos sus problemas. Diseñamos explícitamente soluciones en torno a cómo hacer que sea más seguro y rápido. Observamos lo que los desarrolladores que utilizan este lenguaje intentan hacer y cómo diseñar un lenguaje que se ajuste a sus necesidades, en lugar de adaptarse a situaciones existentes. Este lenguaje está diseñado para los problemas que enfrentan las personas, por lo que cuando hacen la transición, realmente aprecian este lenguaje.
Dicen que la ventaja del primer movimiento es muy importante, pero creo que en este caso, la ventaja del segundo movimiento es más importante.
Exacto, así es.
 y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
15 me gusta
Recompensa
15
5
Republicar
Compartir
Comentar
0/400
DegenWhisperer
· hace21h
El viejo negro lo ha dicho bien esta vez.
Ver originalesResponder0
BearMarketBro
· 08-18 06:41
Nuevos tontos, mejor que no vengan.
Ver originalesResponder0
OnchainDetective
· 08-17 04:31
move increíble sui sigue To the moon
Ver originalesResponder0
GateUser-44a00d6c
· 08-17 04:22
Ya he estado siguiendo Move increíble
Ver originalesResponder0
AirdropHuntress
· 08-17 04:22
Se cuestiona la velocidad de iteración del código de Sui, los datos muestran que la actividad en la Mainnet no cumple con los estándares.
Interpretación del fundador de Move: por qué Sui Move es más adecuado para construir productos Web3
Entrevista con el padre de Move: ¿Por qué el lenguaje de contratos inteligentes Sui Move es adecuado para construir productos Web3?
Recientemente, hablamos con Sam Blackshear, el director técnico de Mysten Labs y creador del lenguaje de programación Move, sobre por qué desarrolló Sui Move, un nuevo lenguaje de programación de contratos inteligentes, las capacidades de escalabilidad de Sui y los beneficios de la tecnología descentralizada para los constructores.
A continuación se presenta el contenido de esta entrevista:
Q1, primero, ¿puede resumir qué es un lenguaje de programación, cuáles son las cualidades más importantes que los desarrolladores consideran al elegir un lenguaje de programación, y qué le impulsó a desarrollar su propio lenguaje de programación?
Un lenguaje de programación es una herramienta para interactuar de manera amigable, segura, eficiente y clara con las computadoras. Esto es especialmente importante para las computadoras. No podemos comunicarnos con las computadoras en lenguaje natural porque el significado completo del lenguaje natural es rico y expresivo.
En los lenguajes de programación, lo más importante es tener una semántica definida con precisión. Cuando escribes un programa, sabes exactamente qué va a hacer. Si haces un pequeño ajuste, sabes qué resultado va a producir ese cambio.
Yo creo que, a diferencia del lenguaje natural, la esencia de los lenguajes de programación está dirigida a un campo específico o a una tarea específica. De lo contrario, solo se necesitaría un lenguaje de programación para completar todas las tareas. Pero la razón por la que existen múltiples lenguajes de programación es porque no puedes sobresalir en todos los campos. Están trabajando para dirigirse a áreas problemáticas específicas y se centran en resolver esos problemas.
Por lo tanto, la historia de Move es muy similar a esto. Cuando lo creé, no fue con la intención de crear un nuevo lenguaje. Los desarrolladores al elegir un lenguaje se preguntan: "¿Es este lenguaje adecuado para la tarea que quiero realizar?" Pero creo que puede ser más importante: "¿Este lenguaje tiene una gran comunidad? ¿Hay muchas bases de datos disponibles? ¿Hay muchos programadores usándolo? ¿Hay buenos recursos educativos?" Todo esto es muy importante, por lo que la barrera para crear un nuevo lenguaje debe ser muy alta.
Q2, ¿puede compartir más información sobre el desarrollo de Move?
Move se originó en el proyecto Libra de Facebook. Mi tarea en ese momento no era crear un nuevo lenguaje, sino que "Libra necesitaba tener contratos inteligentes, así que averigua qué deberíamos hacer". Miré una variedad de cosas. ¿Podemos usar Solidity en EVM? ¿Deberíamos usar un lenguaje de propósito general, como WASM o JVM, y aplicarlo a Libra? ¿O deberíamos crear algo propio?
La decisión de crear nuestras propias cosas se basa en el estudio de los contratos inteligentes existentes, entendiendo lo que los programadores intentan hacer, así como en los aspectos en los que ciertos lenguajes les ayudan y les decepcionan. Mi conclusión es que, en muchos casos, los lenguajes de contratos inteligentes existentes realmente les decepcionan.
Esto se puede ver claramente en el mal historial de seguridad de Solidity, pero más fundamentalmente, estos contratos inteligentes no son el tipo de programa muy tradicional. Solidity no es un lenguaje construido para lo que la gente está haciendo ahora.
Por lo tanto, estos contratos inteligentes son muy simples, básicamente hacen dos cosas. Definen el tipo de activo, incluyendo cuándo se puede transferir el activo, qué se puede hacer con él, quién puede leerlo y las reglas sobre quién puede escribir en él. Y revisan la política de control de acceso para determinar quién posee el activo, quién tiene permiso para usarlo y quién tiene permiso para operarlo. Todo gira en torno al activo, y deseas que estos activos tengan las mismas propiedades que los activos físicos.
En los contratos inteligentes existe el concepto de propiedad y transferencia de propiedad, pero en una computadora, todo son solo dígitos y bytes, y se pueden copiar libremente. Además, sabes que estos conceptos no existen en el mundo real. Por lo tanto, deseas un lenguaje que te proporcione una buena abstracción sobre la propiedad y la homogeneización. Al igual que en el mundo real, pero sin obligar a los programadores a reinventarlo. Deseas obtener garantías básicas de seguridad.
Esta es la función de Move y por qué finalmente creamos este nuevo lenguaje. Estas tareas son fundamentales para la programación de contratos inteligentes. Son difíciles de recrear en otros lenguajes, incluidas las lenguajes de contratos inteligentes existentes, y queremos diseñar todo el lenguaje en torno a proporcionar estas funciones básicas, para que los programadores puedan escribir código de manera segura y eficiente, sin tener que reinventar la rueda cada vez que quieren escribir algo de código.
Q3, Sui utiliza una variante de Move, llamada Sui Move. ¿Qué motivó estos cambios? ¿Qué características de Sui Move son especialmente adecuadas para construir productos en Web3?
Los siguientes factores impulsaron estos cambios, uno de ellos es que el objetivo inicial del proyecto Libra era construir una red de pagos conforme. Por lo tanto, intentamos diseñar Move como un lenguaje universal. Pero también hicimos algunas cosas de manera consciente, ya que Libra quería tener restricciones. Una de las cosas importantes es que no querían que las personas pudieran enviar ciertos activos a cualquier lugar. Querían que las personas crearan explícitamente una cuenta y establecieran algunas reglas al crear la cuenta, como que el propietario de la cuenta debía realizar la verificación KYC. O podría ser necesario pagar una tarifa para crear la cuenta, o solo un pequeño grupo de personas con permiso para crear cuentas podría hacerlo. Dado que el objetivo general es que Libra desea realizar pagos conformes y contratos inteligentes conformes, existen estas restricciones. Pero en el ámbito más general de Web3, es todo lo contrario. No quieres que haya conformidad en el nivel básico, esa es la idea de los contratos inteligentes. Quieres que las cosas sean lo más libres posible, y que puedas enviar algo a cualquier dirección. Luego, no deberías realizar una creación de cuenta explícita, ya que esto bloquearía varios casos de uso. Este es un factor importante.
Otro factor es que, aunque nos centramos en los activos en Move, en ese momento no consideramos cómo introducir el enfoque en los activos en sí en la transacción dentro de Libra. Por lo tanto, cuando llegas al nivel de la transacción, todavía tienes esta API, en la que introduces números y valores booleanos y cosas que no son activos, y luego en Move, usas esos números para extraer activos de la cuenta y realizar otras operaciones. Resulta que la mayor parte del código que ejecutas es este trabajo de contabilidad molesto, que implica sacar esta cosa, sacar aquella cosa, sacar otra cosa, bien, tengo todos los activos que quiero. Están aquí, en mi estudio, ahora puedo comenzar a hacer algo significativo. Luego, al final de este proceso, podrías decir: "Bien, devuelve estos activos a esta cuenta, devuélvelos a aquella cuenta, reorganízalos."
En Sui, hemos reflexionado profundamente, si cada programa comienza y termina de esta manera, ¿podemos abstraerlo? Por lo tanto, la lógica para manejar transacciones hará que sea más fácil para los programadores completar esta tarea, desde la perspectiva del programador, solo necesitan preparar los activos necesarios y comenzar de inmediato a trabajar en cosas interesantes. Este es el modelo de datos orientado a objetos que existe en Sui. En el Move original, teníamos un modelo de datos basado en cuentas, los activos se almacenan bajo la cuenta, y los programadores deben extraerlos explícitamente. Y en Sui, cuando entran en la parte de Move de la transacción, los activos ya han sido adquiridos por el tiempo de ejecución de Sui. Esto es más conveniente para los programadores, ya que no necesitan realizar todo ese trabajo contable antes y después, y también es el secreto que nos permite determinar, sin ejecutarlo realmente, si una transacción se puede ejecutar en paralelo con otra, escalar Sui horizontalmente y realizar otras algunas operaciones de manera más eficiente.
También hemos realizado otros trabajos muy interesantes, como el uso de modelos de datos basados en objetos para bloques de transacciones programables. Este es un tema bastante técnico, y estoy encantado de discutirlo en profundidad. Pero estos dos factores son el principal impulso que lleva a la divergencia con el Move original.
Q4, ¿podría compartir más información sobre los bloques de transacciones programables y sus funciones?
Me gusta usar una analogía para explicar, otras blockchains son como la zona de comidas de un centro comercial. Si quieres un helado, vas al puesto de helados y sacas tu tarjeta de crédito para pagar. Pero si decides que también quieres una hamburguesa, entonces vas al puesto de hamburguesas y pagas de nuevo. No soy una persona glotona, pero si quiero comer ocho cosas, tengo que hacer ocho transacciones separadas. Sui es más como un buffet, donde cada transacción no es solo una cosa. Una vez que pagas el costo del buffet, puedes hacer muchas cosas sin gastar más. Puedes comer helado, puedes comer hamburguesas, puedes mezclar ambas.
Para hacer que este concepto sea más concreto, en un caso simple, si deseas enviar 100 transacciones para acuñar 100 NFT, puedes enviar una transacción que acuñe 100 NFT. El costo de esto es casi el mismo que el costo de acuñar un NFT. También puedes realizar empaquetado de transacciones heterogéneas, por ejemplo, la primera transacción en el bloque retira un personaje de Mario de tu billetera multifirma, mientras que la segunda transacción solicita un Mario y te permite jugar. Si ganas el juego y obtienes un trofeo, tal vez la tercera transacción coloque el trofeo en una vitrina compartida con amigos. Lo genial es que los bloques de transacciones programables permiten a los programadores escribir código de esta manera, el juego no tiene que saber cómo se almacena la billetera multifirma o Mario, tampoco tiene que saber sobre tu vitrina o su implementación.
Los bloques de transacciones programables están compuestos por transacciones que tienen objetos de entrada y salida. Si necesitas un objeto de entrada, puedes obtenerlo sin preocuparte de dónde proviene, y luego pasar su salida al objeto que lo necesita, sin necesidad de preocuparte de a dónde se pasará. En otras blockchains, la acoplamiento es más fuerte, por lo que los juegos deben integrarse con billeteras multifirma y vitrinas de trofeos, o todos deben implementar alguna interfaz común y tener un acoplamiento más fuerte. Sui facilita lo que se llama combinación temporal. Así, si las tuberías coinciden, podemos completar en una transacción.
Q5, ¿cuáles son los beneficios de los bloques de transacciones programables para los usuarios?
Para los usuarios, los beneficios de los bloques de transacciones programables incluyen tarifas de gas más bajas, ya que puedes agrupar todas las operaciones en una sola transacción en lugar de realizar transacciones por separado. Además, el número de aprobaciones necesarias también se reduce. Si el sistema que utilizas requiere aprobación de transacciones, solo necesitas realizar una aprobación y luego se completarán todas las operaciones de una vez. Otro beneficio es la atomicidad; si deseas realizar tres cosas diferentes y quieres que la tercera operación solo tenga éxito si las dos primeras operaciones son exitosas, no podrás lograrlo si esas operaciones deben ser transacciones independientes. Sin embargo, si puedes agruparlas en una sola transacción, podrás hacerlo fácilmente.
Q6, He oído que usted y otros han comentado que desarrollar en Sui es una gran experiencia para los programadores, y esto es muy importante. ¿Tiene alguna anécdota que compartir sobre la experiencia de programadores Web3 experimentados y nuevos al comenzar a usar Sui Move?
Para los desarrolladores que provienen de otros lenguajes de programación Web3, su experiencia de desarrollo en Move y Sui Move es realmente más eficiente y segura. Acabo de participar en un programa de pódcast sobre Bucket Protocol, que están construyendo un proyecto DeFi muy interesante en Sui. Al mostrar la arquitectura del sistema, explicaron cómo los diferentes componentes trabajan en conjunto. Dijeron que si hubieran escrito este proyecto en Solidity, podría haber tomado ocho meses, pero con Sui Move solo tomó dos meses, y tienen mucha confianza en su seguridad. La forma en que funciona este lenguaje se acerca mucho a la idea del portafolio de proyectos que tienen en mente. En el ámbito de Solidity, esa conexión no es tan directa.
Este es solo un ejemplo, pero hemos escuchado muchas situaciones similares, donde las personas dicen que su velocidad de desarrollo en este lenguaje es más rápida y se sienten más seguras al finalizar. Me alegra escuchar eso. Pero, en cierto modo, no es sorprendente; estudiamos Solidity y entendimos sus problemas. Diseñamos explícitamente soluciones en torno a cómo hacer que sea más seguro y rápido. Observamos lo que los desarrolladores que utilizan este lenguaje intentan hacer y cómo diseñar un lenguaje que se ajuste a sus necesidades, en lugar de adaptarse a situaciones existentes. Este lenguaje está diseñado para los problemas que enfrentan las personas, por lo que cuando hacen la transición, realmente aprecian este lenguaje.
Dicen que la ventaja del primer movimiento es muy importante, pero creo que en este caso, la ventaja del segundo movimiento es más importante.
Exacto, así es.
![Entrevista con el padre del lenguaje Move: ¿Por qué el lenguaje de contratos inteligentes Sui Move es adecuado para construir productos Web3?](