0% encontró este documento útil (0 votos)
10 vistas4 páginas

Programación Modular y Clases en C#

El documento aborda la programación modular, explicando conceptos clave como clases y objetos, donde una clase es una plantilla para crear objetos y un objeto es una instancia de una clase. También se discuten los tipos de módulos, la diferencia entre procedimientos y funciones, y las características de la programación modular que facilitan el mantenimiento y la reutilización del código. Se menciona el paso de parámetros por valor y por referencia, así como las diferencias entre arrays y variables en este contexto.

Cargado por

udemy.chavales
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
10 vistas4 páginas

Programación Modular y Clases en C#

El documento aborda la programación modular, explicando conceptos clave como clases y objetos, donde una clase es una plantilla para crear objetos y un objeto es una instancia de una clase. También se discuten los tipos de módulos, la diferencia entre procedimientos y funciones, y las características de la programación modular que facilitan el mantenimiento y la reutilización del código. Se menciona el paso de parámetros por valor y por referencia, así como las diferencias entre arrays y variables en este contexto.

Cargado por

udemy.chavales
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

UF02 PROGRAMACION MODULAR.

Clases y objetos:
¿Qué es una clase?
Plantilla para la creación de objetos de datos según un modelo predefinido. Se usa para crear
muchos elementos a partir de ella. Como ejemplo esta clase coche que se usa para recoger
variables relacionadas a ello, como la marca, la velocidad, el color, etc. De esta forma cada
objeto perteneciente a la clase tendrá una marca, una velocidad, un color. En definitiva,
definimos con la clase las cualidades del objeto. Se usa para representar entidades o conceptos,
como los sustantivos en el lenguaje. Cada clase tiene sus propias variables (llamadas atributos)
que indican su estado. Cada clase tiene sus propios métodos (funciones o procedimientos) para
manipular esos atributos que nos indican el comportamiento del objeto. Por ejemplo, en la
función marcha se devuelve que, si la velocidad es mayor a cero de true, y si es igual a cero
false.

¿Qué es un objeto?
Cada entidad basada en una clase y creada a partir de ella se le denomina OBJETO. Al proceso
de crear objeto a partir de clases se le llama INSTANCIAR, y se dice que cada objeto es una
INSTANCIA de la clase. Todas las instancias de una clase tendrán los mismos atributos (con
distinto valor) y funcionan con los mismos métodos.

Programación modular:
La programación modular consiste en dividir el problema original en varios subproblemas, que
se pueden resolver por separado, para, después recomponer los resultados y obtener la solución
al problema. Un subproblema se denomina modulo (función o procedimiento), y es una parte
del problema que se puede resolver independientemente. Un modulo son trozos de código con
nombre.
Para esto se usa el: static void <nombre>()
Entre sus ventajas encontramos que facilitan el mantenimiento, la modificación y la
documentación, facilitan las pruebas (testing), también la reutilización de modulos y la
independencia de los fallos.
Entre sus desventajas está que no se dispone de algoritmos formales de modularidad, por lo que
a veces los programadores no tienen claras las ideas de los modulos -> experiencia.

Tipos de módulos (métodos):


El tipo de método función es aquel que devuelve un valor, mientras que aquel método de tipo
procedimiento no devuelve ninguno.

Procedimiento vs funciones:
Ambos son métodos que crean una funcionalidad que puede ser llamada en cualquier punto del
programa. En el ejemplo creamos un método suma con dos parámetros, datos con información
que recibe un método.
Public void suma(int a, int b) { // a y b son parámetros.
Int resultado = (a + b);
[Link](“LA suma es “ + resultado);
}
Los parámetros se diferencian del argumento en que los parámetros se llaman en la definición
del procedimiento del método, y los argumentos son aquellos que al llamar a la función suma
(en el ejemplo) le pones los valores. Son parecidos y hacen casi lo mismo.
Volviendo al tema, las funciones a diferencia de los procedimientos deben devolver un valor,
esto es la gran diferencia. En el primero usamos la palabra “void” y en una función declaramos
el tipo de dato que va a devolver la función. El resultado lo devuelve al punto donde se quedó el
programa al llamar a la función. Véase en el ejemplo.

Public int suma(int a, int b) { // a y b son parámetros.


Int resultado = (a + b);
[Link](“LA suma es “ + resultado);
Return resultado; //asi se devuelve el valor.
}
Cuando creas un procedimiento, toda la información generada; parámetros y variables internas,
solo existen mientras está ejecutándose el procedimiento. Al finalizar se libera la memoria de la
variable, los parámetros, y se sigue trabajando como si no hubiese existido.

¿Qué partes forman un subprograma en la sintaxis de C#?


<modificador> <tipo de dato para el return> <nombre> <parámetros de
entrada> {
<Código de la función>
return < valor a devolver >;
}

En C#, los modificadores de acceso determinan el alcance de la visibilidad de las clases,


métodos, propiedades y otros miembros en una aplicación. Aquí están las definiciones
correctas:

 Public: los miembros públicos son accesibles desde cualquier lugar en el código. Es
decir, cualquier clase en cualquier parte del código puede acceder a ellos.
 Protected: los miembros protegidos son accesibles desde la clase donde se definen y de
cualquier clase derivada de esa clase. Es decir, no son accesibles desde cualquier lugar
en el código.
 Private: los miembros privados son accesibles sólo desde la clase donde se definen. Es
decir, no son accesibles desde ninguna otra clase.
 Internal: los miembros internos son accesibles sólo desde el mismo ensamblado
(assembly). Es decir, sólo las clases que se encuentran en el mismo proyecto pueden
acceder a ellos.

La única parte que parece incorrecta en tu pregunta es que el modificador "internal" no está
relacionado con la clase "Program". En lugar de eso, está relacionado con el ensamblado o
assembly en el que se define la clase.

Características de Programación Modular:


La programación modular es una técnica de programación que consiste en dividir un programa
en módulos o subprogramas más pequeños y manejables que se interconectan entre sí. Cada
módulo debe tener una única responsabilidad y su propia interfaz definida, lo que facilita el
mantenimiento y la escalabilidad del programa. El diseño modular también permite una mayor
reutilización de código, ya que los módulos se pueden utilizar en diferentes programas.
Paso por valor y paso por referencia:
Cuando se llama a una función con parámetros pasados por valor (MiMetodo(numero)), se
crea una copia del valor pasado y se trabaja con esa copia dentro de la función. Esto significa
que cualquier cambio que se realice en el valor dentro de la función no afectará al valor original
fuera de la función. En cambio, cuando se llama a una función con parámetros pasados por
referencia (MiMetodo(ref numero)), se trabaja directamente con el valor original, lo que
significa que cualquier cambio realizado dentro de la función afectará el valor original fuera de
la función.

(Diferencias entre Arrays y Variables:

La página web de Microsoft dice que el paso de VECTORES por VALOR se hace mediante
PARAMS. Ya que los vectores y arrays, a diferencia de las variables viene
predeterminadamente por REFERENCIA Y NO POR VALOR. Pero eso no impide que se
modifique el valor. Por ello, llamar a una funcion con PARAMS o sin ella, es exactamente lo
mismo. SI O SI se pasa por referencia. LO MAS USADO ES PASAR POR VALOR.

En cuanto a a las variables individuales el paso por VALOR es PREDETERMINADO y no


necesita de clave. Para pasar este tipo de variables por REFERENCIA se necesita de una
palabra clave, que puede ser:
 ref/out con la intención de modificar el valor de la variable original, para pasar por
REFERENCIA.
 In para pasar una varible por REFERENCIA, pero protegida en modo LECTURA. De
essta forma si se intenta modificar, el compilador arrojara un error.

También podría gustarte