Colección de citas famosas - Colección de máximas - ¿Qué es VC? ¿Nuestra empresa escucha a menudo a la gente hablar de VC? ¿Qué quieres decir?

¿Qué es VC? ¿Nuestra empresa escucha a menudo a la gente hablar de VC? ¿Qué quieres decir?

1. ¿Qué es la CV? ¿Qué significa estudiar VC?

En primer lugar, VC es un software (entorno de desarrollo integrado IDE) (compilación, edición, depuración)

C y C++. Pero algunas funciones de C++ no se utilizan, como flujos de E/S y herencia polimórfica

WindowsSDK (herramientas de desarrollo de software)

El alma de VC: MFC (Biblioteca de clases básica de Microsoft)

ATL (ActiveX Template Library)

Otros SDK, como OpenGL, DirectX, ActiveMoive, DrawDib(WinG)

VC se basa en muchas tecnologías en general , al igual que las 72 habilidades de Shaolin, generalmente es suficiente aprender solo algunas de ellas durante la aplicación. Nuestro objetivo actual es en realidad aprender un conjunto de Shaolin Changquan. Este conjunto de puños largos debe incluir:

1. Desarrollar un hábito de desarrollo de software riguroso y estar familiarizado con los principios básicos de la ingeniería de software.

2. Conceptos básicos del lenguaje C

3. El contenido más básico de C++: conceptos de clases, herencia, encapsulación y polimorfismo

4. utilizar El asistente crea un marco de programa

5. Menú de diseño

6. Barra de herramientas de diseño

7. Controles de cuadro de diálogo de uso común: botones, texto estático, cuadros de edición, etc.

Sepa cómo crear nuevas clases, funciones miembro, variables miembro y funciones de procesamiento de mensajes.

9. Comprender los mensajes de Windows más utilizados: como WM_PAINT (redibujar ventana), presionar el mouse, ventana emergente, movimiento, cuadro de diálogo de inicialización, etc.

10. Comprenda la GDI (Interfaz de dispositivo gráfico) más simple: escriba texto, dibuje marcos, dibuje puntos, líneas, círculos y configure pinceles y pinceles.

11. Familiarizado con las clases MFC más utilizadas:

CWnd

CDocument

CView

CDC.

CDC

p>

CDialog

CWinApp

CGdiObject y subclases

CString, CPoint, CRect, CSize y otros tipos de datos simples

CFile

Los contenidos mencionados anteriormente son contenidos que todos usarán.

2. Introducción a MFC

Los contenidos principales anteriores están muy relacionados con el funcionamiento real y es imposible explicarlos claramente aquí; además, se mencionarán en libros comunes; . Presentaré principalmente el MFC más importante.

MFC es una encapsulación de la API de Windows, lo que simplifica enormemente nuestro trabajo; aprender VC significa principalmente aprender MFC. Hay alrededor de 100 clases, pero solo 20 o 30 se usan comúnmente. Debes entender estas clases comunes como si memorizaras palabras de nivel 4; por supuesto, no las memorices de memoria. Debes aprenderlas leyendo ayuda, ejemplos y ejercicios prácticos. Además, no todas las funciones dentro de cada clase deben serlo. se aprenden y deben aprenderse con el tiempo. Si realmente quieres convertirte en un maestro, hacer un cuaderno para anotar las clases y funciones que crees que son importantes y aprender en cualquier momento también es una buena forma de atacar.

A continuación se presenta el MFC más importante.

CWnd: Ventana, que es la clase principal de la mayoría de las "cosas visibles" (casi todo lo visible en Windows es una ventana y hay muchas ventanas pequeñas en una ventana grande), como Ver CView, marco ventana CFrameWnd, barra de herramientas CToolBar, cuadro de diálogo CDialog, botón CButton, etc. una excepción es que el menú (CMenu) no se deriva de la ventana. Esta categoría es muy grande, por lo que no es necesario que la aprendas desde el principio, solo conócela.

CDocumento documento es responsable de la interacción entre los datos de la memoria y el disco. Los más importantes son OnOpenDocument (lectura), OnSaveDocument (escritura en disco) y Serialize (lectura y escritura)

CView, que es responsable de la interacción entre los datos de la memoria y los usuarios. Incluyendo visualización de datos, respuesta de operación del usuario (como selección de menú, respuesta del mouse). Lo más importante es OnDraw (redibujar ventana), que normalmente se inicia con CWnd::Invalidate(). Además, maneja menús, barras de herramientas, teclas de acceso directo y otros mensajes de usuario a través de mapas de mensajes. Se le deben añadir muchas funciones propias, y es con la que más te ocupas.

Texto del dispositivo CDC. Ya sea un monitor o una impresora, dibujan imágenes para que las vea el usuario. Esta imagen está extraída de los CDC. CDC, junto con otros GDI (Graphics Device Interface), completa la visualización de texto, gráficos e imágenes. Piense en el CDC como una hoja de papel. Cada ventana está asociada con un CDC que es responsable de dibujar la ventana. CDC tiene una subclase común CClientDC (área de cliente de ventana), y el dibujo generalmente se completa a través de CClientDC.

Cuadro de diálogo CDialog

Clase de aplicación CWinApp. Similar a la función principal en C, es la entrada y administrador de la ejecución del programa, responsable de la creación y destrucción del programa y de la creación de la ventana principal y la plantilla del documento. La función más utilizada InitInstance(): inicialización.

CGdiObject y sus subclases se utilizan para dibujar imágenes en texto del dispositivo. Todos deben seleccionarse en el DC antes de su uso.

CPen lápiz, dibuja líneas

CBrush pincel, rellena

CFont font, controla la fuente de salida de texto

CBitmap bitmap

p>

Paleta CPalette

Área CRgn, designa un área que se puede utilizar para procesamiento especial.

Archivo CFile. Los más importantes son Abrir, Leer y Escribir

Cadena CString. Encapsula la matriz de caracteres en C y es muy práctico.

CEl punto es (x, y) par

CEl rectángulo correcto es (izquierda, arriba, derecha, abajo)

CEl tamaño es (cx, cy) a (ancho, alto)

3. Haz buen uso de MSDN y ejemplos

Como mejora, los ejemplos recomendados son:

Hola es el programa más simple framework

nDibujo con ratón garabateado. Tutorial: Conceptos básicos de programación, GDI

nDiblook el ejemplo más simple de procesamiento de imágenes

nNavegador de Internet MFCIE

nRegistrar base de datos

nDaoviewDao (acceso a datos objeto) ejemplo. Controles de vista de árbol y columnas

nEjemplo de nCubeOpenGL, dibuja un cuadro giratorio

nServidor HierSvrOLE

nContenedor OclientOLE

nDibujo del mouse nDrawcli. También incluye OLE.

Tablero de escritura WordPad. OLE

Cuatro. Algunas experiencias

A. ¿Por qué usar Windows en lugar de la programación en DOS?

La programación en Windows no es mucho más difícil que la programación en DOS. Tengo tantas ideas y no sé por dónde empezar. De hecho, si conoce el lenguaje C, encontrará que programar en Windows no es más difícil que cuando aprendió el lenguaje C. Si desea convertirse en un maestro en programación de DOS, también necesita aprender cientos de funciones (ya sean TC, BC, MicrosoftC) y tener un conocimiento profundo de las llamadas a funciones de DOS en el nivel del lenguaje ensamblador. Pero ahora, en Windows, puede obtener beneficios varias veces mayores por la misma cantidad de trabajo. Si antes estaba familiarizado con la programación de DOS y ahora se dedica a la programación de Windows, definitivamente sentirá la gran ventaja en solo dos semanas: en DOS, debe hacerlo todo usted mismo y también existen limitaciones como memoria de 64 K, precisión de visualización, etc. En realidad, es la mitad del resultado con el doble de esfuerzo.

B. ¿Por qué utilizar VC en lugar de otros lenguajes de programación de Windows?

nLa mayoría del software a gran escala (incluido el propio Windows) está compilado en C y C++, por lo que puede utilizar el código fuente. Hay mucho código. Por ejemplo, Photoshop tiene una interfaz de programación VC. Ningún otro idioma tiene ventajas históricas como VC. Además, existen muchas herramientas de desarrollo de VC, desde empresas de control hasta desarrolladores de hardware, sus productos rara vez se atreven a proporcionar interfaces de VC.

nVC es adecuado para organizar proyectos grandes (VB no es adecuado)

nBorland C++ o C++Builder también son muy buenos, no peores que VC. Sin embargo, la compatibilidad de la versión de BC no es buena y aparece una "brecha generacional" de 3.1 a 4.0. Además, VC proporciona documentos y ejemplos extremadamente ricos, y VC tiene muchos más materiales de referencia que BC. Y VC y otros miembros de Visual Studio pueden coordinar su trabajo, lo que resulta beneficioso para la ingeniería de software.

n

C. No aprendas a programar WinAPI al principio, pero es mejor aprender WinAPI en el futuro.

Ten especial cuidado de no comprar. libros sobre programación WindowsSDK al principio. Un ejemplo notorio es "HelloWorld". Varios lenguajes informáticos a menudo dan ejemplos en cursos introductorios para mostrar una línea de texto "HelloWorld". Ya sea en Basic, C, Pascal o incluso en ensamblador, este pequeño programa más simple se puede escribir en solo unas pocas líneas. Pero en los primeros días de la programación de Windows, el famoso ejemplo de "HelloWin" que acabo de mencionar requería organizar un proyecto y escribir cientos de líneas de código para lograrlo. Esto asusta a muchas personas que quieren aprender a programar en Windows.

De hecho, la forma más sencilla de mostrar "Helloworld" en Windows es de solo 5 líneas:

#include "windows.h"

voidWinMain()

{

MessageBox(NULL,"HelloWorld!","MyFirstWindowsApplication",MB_OK

}

Por supuesto, este programa solo crea un cuadro de diálogo muy simple. , pero eso es suficiente.

Si no tienes experiencia en programación SDK, aprender VC significa usar MFC para omitir muchos detalles de la programación de Windows. ¿Por qué no utilizar buenas herramientas si están disponibles? Ahora, cuando escribes "HelloWorld" en VC, solo necesitas escribir una línea de código.

voidCYourView::OnDraw(CDC*pDC)

{

//…….Otros códigos

pDC->TextOut ( 100,100,"HelloWorld!");

}

Pero MFC no es omnipotente. Hay muchas funciones en WinAPI y VC que no se pueden reflejar en MFC. Después de comenzar, la API de Windows sigue siendo muy importante si desea utilizar VC en todas sus capacidades. Además, estas API también se utilizan en otros lenguajes de Windows.

Aprender un idioma es similar a practicar artes marciales. VC, VB, Dlphi, VFP y otros lenguajes de programación de Windows pertenecen a la misma escuela: Windows, aunque los movimientos son diferentes, las habilidades internas son las mismas. Esta es la API (interfaz de programación de aplicaciones) de Windows. alrededor de dos mil funciones. En cualquier arte marcial, no importa cuán complejos sean los movimientos, generalmente se pueden memorizar en un corto período de tiempo, pero la fuerza interna no se logra de la noche a la mañana; Además, la fuerza interna de cada escuela es diferente. Las escuelas Unix y Linux tienen la fuerza interna de Uinx, la escuela Apple tiene la fuerza interna de Mac y Java es su propia escuela. De lo que estamos hablando aquí sobre aprender VC es simplemente aprender los movimientos. Un mes es suficiente para aprender los movimientos. Si eres inteligente, puedes dominarlos en dos semanas. Los movimientos ópticos son suficientes para asustar a la gente, pero si compites con un experto, tendrás que hacer el ridículo. Para dominar VC, debe estar familiarizado con la API de Windows.

D. Lenguaje de alto nivel y lenguaje natural

Un lenguaje de alto nivel y un lenguaje natural son similares. Hay tres elementos clave:

Sintaxis: Es relativamente fácil entender la sintaxis básica de C y C++.

Retórica: El arte y estilo de la programación. Normalmente, esto está asociado con la ingeniería de software. Los trucos algorítmicos no son críticos. Ser riguroso, trabajar estrictamente de acuerdo con las normas y, al mismo tiempo, ser capaz de mostrar una gran creatividad es la verdadera naturaleza de un lingüista.

Vocabulario: ¿Cómo aprovechar el trabajo de otras personas? ¿Cómo puedo utilizar mi trabajo anterior? Ésta es la clave del éxito como ingeniero de software. Si no tiene un vocabulario rico, no podrá escribir buenos artículos y no podrá expresar sus ideas. La gramática de una persona se aprende básicamente antes de ingresar a la escuela primaria, y su nivel retórico también se determina a una edad temprana. Solo es necesario aprender y ampliar continuamente su vocabulario según sea necesario. En la programación de VC, tener un vocabulario amplio significa dominar más clases, funciones y otros componentes de programación. Por ejemplo: Windows SDK, MFC y SDK listos para usar en los campos en los que se especializa, como OpenGL en programación 3D, DirectX en programación multimedia y la biblioteca Victor en procesamiento de imágenes. Además, el dominio de los controles ActiveX suele ser la clave del éxito o del fracaso. Nuestro trabajo de los últimos años también se ha resumido en una biblioteca de clases llamada IPX (Image Processing Framework), que simplifica enormemente el trabajo de procesamiento de imágenes; sin embargo, todavía quedan muchos detalles por resolver. Si algún estudiante está interesado, puede hacerlo. puede participar en este aspecto del trabajo.

Para aprender VC, no debemos utilizar el método con el que aprendemos inglés en la escuela, sino el método que los niños aprenden a hablar. El llamado método de aprendizaje de inglés es la forma en que aprendimos el lenguaje C en nuestros estudios universitarios: comprendemos cada detalle en detalle, memorizamos una gran cantidad de reglas, rara vez practicamos en la computadora, no tenemos problemas prácticos que resolver y finalmente determinamos. los resultados del aprendizaje a través de exámenes. Todo el mundo conoce las consecuencias de este modelo: hemos estudiado inglés durante más de diez años, pero muchos de nosotros todavía sólo sabemos entre cuatro y cinco mil palabras, podemos escribir cientos de palabras y no podemos hablar ni escuchar. Lo que es especialmente terrible es que, No puedo entender la documentación de ayuda de VC. Debemos ser como bebés, aprendiendo gramática, retórica y vocabulario a través del uso; solo podemos inventar lo peor al principio, así como un niño solo puede decir: "Papá toma un auto, un auto" pero "Papá", "; un coche, un coche". Estas palabras son las más necesarias para los niños y tienen la mayor eficiencia de aprendizaje. Al aprender VC, debo comenzar con mis necesidades, primero hacer lo más simple y luego volverme gradualmente más complicado, como una bola de nieve.

Cuando aprendes VC, necesitas especialmente comunicarte con los demás. Si piensas mucho y no entiendes, es posible que otros lo hayan resuelto hace mucho tiempo. Debes ser bueno aprendiendo: busca libros útiles en la librería; aprende de los expertos que te rodean; busca códigos fuente, bibliotecas de clases, componentes, controles y bibliotecas que puedas usar; capaz de resolver los problemas aún más.

Material de referencia:/3647789.html