Colección de citas famosas - Colección de versos - ¿Qué es un marco de código abierto?

¿Qué es un marco de código abierto?

Nunca entendí lo que significa un marco en Java. Por ejemplo, ¿cuáles son los tres marcos de código abierto de Java?

De hecho, el marco es muy simple. Puedes usarlo como herramienta o incluso como complemento.

La función del marco es encapsular una tecnología común y de uso común.

Ayudarte a hacer algunas cosas básicas para que no tengas que escribir esas cosas tediosas.

Tome los Struts que desea aprender como ejemplo: está esencialmente escrito en Java y no es diferente de nuestras propias clases. Podemos implementar lo que implemente.

Por ejemplo, usamos request.getParameter() para recibir datos del cliente, pero si hay muchos parámetros, tenemos que escribir muchos, lo cual es muy problemático. Struts nos ayudará a conseguirlo. No necesitamos escribirlo. Simplemente escribe un atributo y obtendrás el arco. De hecho, la esencia sigue siendo request.getParameter(). .

Así que no te preocupes por cuál es el marco, solo tócalo y lo sabrás. Lo consideras una herramienta, este es el marco.

¿Existe alguna diferencia entre frameworks de código abierto y proyectos de código abierto?

Similitudes: Ambos son código abierto y proyectos.

Diferencia: el marco es para comodidad de los desarrolladores y lo utilizan los desarrolladores, como el marco de red libevent. Un proyecto se refiere a un plan desarrollado para lograr una determinada necesidad. Por ejemplo, la solución para desarrollar libevent es un proyecto y el desarrollo de software de red utilizando libevent es otro proyecto.

¿Qué es un framework de código abierto Java?

De hecho, el marco es muy simple. Puedes usarlo como herramienta o incluso como complemento.

La función del marco es encapsular una tecnología común y de uso común.

Ayudarte a hacer algunas cosas básicas para que no tengas que escribir esas cosas tediosas.

Tome los Struts que desea aprender como ejemplo: está esencialmente escrito en Java y no es diferente de nuestras propias clases. Podemos implementar lo que implemente.

Por ejemplo, usamos request.getParameter() para recibir datos del cliente, pero si hay muchos parámetros, tenemos que escribir muchos, lo cual es muy problemático. Struts nos ayudará a implementarlo y no es necesario escribirlo. Solo necesitamos escribir un atributo para obtenerlo. De hecho, la esencia sigue siendo request.getParameter(). .

Así que no te preocupes por cuál es el marco, sólo tócalo y lo sabrás. Lo consideras una herramienta, este es el marco.

Marco de primer plano: jQuery

Marco de trabajo Mvc: Struts, Spring Mvc

Marco de trabajo principal: Spring

Marco de trabajo Orm: Hibernate, Spring JDBC , miBatis.

¿Cuáles son las ventajas y desventajas de los marcos de rastreo de código abierto?

Al desarrollar rastreadores web, ¿debería elegir Nutch, Crawler4j, WebMagic, scrapy, WebCollector u otros? Según mi experiencia aquí, sin más preámbulos: los rastreadores mencionados anteriormente se pueden dividir básicamente en tres categorías: 1. Nutch de reptil distribuido.

2. Rastreador único JAVA: Crawler4j, WebMagic, WebCollector.

3. Rastreadores independientes que no son JAVA: scrapy

La primera categoría: reptiles distribuidos

Los rastreadores utilizan rastreadores distribuidos para resolver principalmente dos problemas:

p>

1) Gestión masiva de URL

2) Velocidad de la red

El rastreador distribuido más popular ahora es Nutch de Apache. Pero para la mayoría de los usuarios, Nutch es la peor opción entre estos rastreadores por las siguientes razones:

1) Nutch es un rastreador diseñado para motores de búsqueda y la mayoría de los usuarios necesitan un rastreador para rastrear (extraer) datos precisos. Nutch ejecuta un conjunto de procesos, dos tercios de los cuales están diseñados para motores de búsqueda. No tiene mucho sentido para una extracción fina. En otras palabras, utilizar Nutch para extraer datos perderá mucho tiempo en cálculos innecesarios.

Y si intenta hacer que Nutch sea adecuado para el negocio de extracción fina a través del desarrollo secundario, básicamente destruirá el marco de Nutch, cambiará a Nutch más allá del reconocimiento y tendrá la capacidad de modificar Nutch. Realmente es mejor reescribir usted mismo un marco de rastreo distribuido.

2) Nutch se ejecuta en hadoop, lo que a su vez consume mucho tiempo. Si la cantidad de máquinas del clúster es pequeña, la velocidad de rastreo no será tan rápida como la de un solo rastreador.

3) Nutch tiene un mecanismo de complemento, que se promociona como un punto destacado. Puede ver algunos complementos de Nutch de código abierto que proporcionan funciones de extracción finas. Pero cualquiera que haya desarrollado complementos de Nutch sabe lo desagradable que es el sistema de complementos de Nutch. El uso del mecanismo de reflexión para cargar y llamar complementos hace que sea extremadamente difícil escribir y depurar programas, y mucho menos desarrollar sistemas de extracción complejos y sofisticados sobre ellos. Además, Nutch no proporciona un punto de montaje enchufable correspondiente para una extracción fina. El complemento Nutch solo tiene cinco o seis puntos de montaje, y estos cinco o seis puntos de montaje sirven a los motores de búsqueda y no proporcionan puntos de montaje para una extracción fina. La mayoría de los complementos de extracción refinados de Nutch están montados en el punto de montaje del "analizador". En realidad, se utilizan para analizar enlaces (proporcionar URL para su posterior rastreo) y proporcionar a los motores de búsqueda información de páginas web fácilmente extraídas (metainformación y. texto textual de la página web).

4) Utilice Nutch para el desarrollo secundario de rastreadores. El tiempo necesario para la compilación y depuración del rastreador suele ser más de diez veces mayor que el de un rastreador de una sola máquina. Aprender el código fuente de Nutch es muy costoso, y mucho menos permitir que todos los miembros del equipo comprendan el código fuente de Nutch. Durante el proceso de depuración, ocurrirán varios problemas (problemas de hadoop, problemas de hbase) además del programa en sí.

5) Mucha gente dice que Nutch2 tiene gora, que puede conservar datos en archivos avro, hbase, mysql, etc. De hecho, mucha gente lo entendió mal. Los datos persistentes mencionados aquí se refieren al almacenamiento de información de URL (datos necesarios para la administración de URL) en avro, hbase y mysql. Estos no son los datos estructurados que desea extraer. De hecho, para la mayoría de las personas, no importa dónde se almacene la información de la URL.

La versión Nutch 2 actualmente no es apta para desarrollo. La versión estable oficial de Nutch es nutch2.2.1, pero esta versión viene incluida con gora-0.3. Si desea usar hbase con nutch (la mayoría de la gente usa nutch2 solo para usar hbase), solo puede usar hbase alrededor de la versión 0.90, y la versión de hadoop debe reducirse a aproximadamente 0.2 en consecuencia. Y el tutorial oficial de nutch2 es engañoso. Nutch2 tiene dos tutoriales, Nutch1.x y Nutch2.x. Nutch2.x está escrito en el sitio web oficial de nutch 2.x y es compatible con hbase 0.94. Pero, de hecho, Nutch2.x se refiere a la versión anterior a Nutch2.3 y posterior a Nutch2.2.1, que los funcionarios de SVN actualizan continuamente. Y es muy inestable (siempre en modificación...

¿Qué significa ser un marco de desarrollo rápido de aplicaciones gratuito y de código abierto?

ThinkAndroid se lanza de forma gratuita bajo Apache2 Acuerdo de código abierto, marco de desarrollo de Android simple y de código abierto. Su propósito de desarrollo es desarrollar aplicaciones de Android de manera simple y rápida, incluido Android mvc, sqlite orm simple, módulo ioc y el módulo que encapsula el cliente de Android. caché de archivos. Independientemente del formato, se puede almacenar en caché fácilmente. Basado en el módulo de almacenamiento en caché de archivos, se implementa la función de almacenamiento en caché de imágenes en Android, y los problemas de OOM y desalineación al cargar imágenes también se pueden resolver. un método que se utiliza a menudo en el desarrollo de herramientas de utilidad para teléfonos móviles, como gestión de registros, gestión de archivos de configuración, módulo de descarga de Android, detección de conmutación de red, etc.

Actualmente, ThinkAndroid tiene principalmente los siguientes módulos:

Módulo MVC: desde vistas separadas en el modelo.

Módulo Ioc: el módulo ioc en Android puede vincular la interfaz de usuario, leer recursos en resolución e inicializar objetos de una manera completamente anotada.

Módulo de base de datos: marco ORM en Android, que utiliza un grupo de subprocesos para operar SQLite.

Módulo: Encapsula solicitudes de datos a través del cliente y admite carga asíncrona y sincrónica.

Módulo de caché: el almacenamiento en caché se puede implementar bien mediante una configuración y un diseño simples, y el caché se puede configurar a voluntad.

Módulo de almacenamiento en caché de imágenes: ImageView no necesita considerar la desalineación de las imágenes cuando los contenedores OOM y Android se deslizan rápidamente durante el proceso de carga de imágenes.

Módulo configurador: se utiliza para implementar una configuración de emparejamiento simple. Actualmente, los archivos de configuración pueden admitir el acceso a las preferencias y propiedades configuradas.

Módulo de impresión de registros: puede realizar la impresión de registros de forma rápida y cómoda, y admite la expansión de la impresión de registros. Actualmente admite la escritura de tarjetas SD en la impresión local y en la consola.

Módulo de descarga: puede implementar fácilmente descargas multiproceso, descargas en segundo plano, descargas de reanudación de puntos de interrupción y controlar el inicio, pausa, eliminación, etc. de las descargas.

El módulo de detección del estado de la red se utiliza para detectar el estado de la red cuando cambia el estado de la red.

¿Qué significa PHP framework de código abierto?

Código abierto significa código fuente abierto, que es gratuito~

Jian Chuanlou lo dejó muy claro, así que no diré más.

Por supuesto, los frameworks están escritos en este lenguaje. Todos los marcos de Java están escritos en Java, y todos los marcos de C# están escritos en C#

Php también debe estar escrito en php

¿Alguien puede explicar qué significa Android SDK y marco de código abierto? 30 minutos

Simplemente descarga Baidu y haz más.

¿Hay alguna diferencia entre el marco front-end y el marco de código abierto PHP que escuchas a menudo?

El marco PHP de código abierto está desarrollado para scripts de servidor, como CakePHP, CodeIgniter, etc. Los marcos de front-end se centran en las operaciones de front-end del navegador, como jQuery, extJS, etc. Habrá una conexión entre los dos en el diseño general del sistema. Espero que ayude, ¡gracias!

¿Cuáles son algunos excelentes marcos de desarrollo de aplicaciones web de código abierto?

Jquery, Extjs, prototipo, kissy, bootstrap, jQuery UI, easy UI, flex, yui, Dojo, etc. Hay marcos que se centran en js y css.

¿Cuáles son las ventajas y desventajas de los marcos de rastreo de código abierto?

No importa qué tipo de marco de código abierto de rastreador, existe una deficiencia importante, es decir, funciones limitadas. Escribo rastreadores C++, por lo que recomiendo el software de rastreo general que escribí yo mismo.

La herramienta de rastreo previa al rastreo que escribí tiene un rango de recopilación completo, precisión de datos precisa, excelente rendimiento de rastreo, operación visual simple y recopilación automática inteligente, lo que permite a las empresas obtener rápidamente información en Internet con muy poco Costo laboral. Datos estructurados o no estructurados.

Este software puede recopilar casi todos los datos públicos en Internet y, a través de un proceso de operación visual, puede completar la creación, el filtrado, la recopilación y el almacenamiento de tablas en un solo paso. Admite operaciones de expresiones regulares y tiene un potente sistema de lenguaje de programación orientado a objetos.

La capacidad de recolección de una sola máquina puede alcanzar entre 40 y 80 millones, y la capacidad de recolección diaria supera los 5 millones. El volumen de recolección único del servidor puede alcanzar de 800 millones a 160.000, y el volumen de recolección diario supera los 20 millones. Paralelamente, puede admitir más de 10 mil millones de enlaces de datos, comparable a los sistemas de motores de búsqueda como Baidu.

Con carácter general, las características son:

(1) Adquisición integral. Básicamente ingresa al enlace URL y sigue los pasos paso a paso. Los scripts de configuración también son compatibles si hay casos especiales que requieren un manejo especial para la recopilación.

(2) Humanidad. Admite ajuste dinámico, recopilación programada automática y actualizaciones de plantillas en línea.

(3) Alta eficiencia operativa. Todas las operaciones del rastreador ForeSpider son visuales. Lo que desea recopilar se puede obtener una vista previa directamente en su software de rastreo. De esta manera, puedo eliminar directamente los datos no válidos antes de recopilarlos y el costo de aprendizaje es muy bajo.

(4) Alta precisión. La extracción de datos también se puede visualizar, admitiendo expresiones regulares y configuración de scripts para lograr una recopilación más precisa.

(5) Potente. Admite reconocimiento de códigos de verificación, búsqueda de palabras clave, recopilación de inicios de sesión y protocolo HTTPS.

¡No más preocupaciones por las restricciones de inicio de sesión y códigos de verificación! !

(6) Fuerte rendimiento de recolección: la capacidad de recolección de una sola máquina puede alcanzar entre 40 y 80 millones, y la capacidad de recolección diaria supera los 5 millones. El volumen de recolección único del servidor puede alcanzar de 800 millones a 160.000, y el volumen de recolección diario supera los 20 millones. Paralelamente, puede admitir más de 10 mil millones de enlaces de datos, comparable a los sistemas de motores de búsqueda como Baidu.