domingo, 28 de febrero de 2010

jueves, 25 de febrero de 2010

C#

*Principio de la década de los 70s: El Prolog (o PROLOG), proveniente del francés PROgrammation en LOGique, es un lenguaje de programación lógico e interpretado, bastante conocido en el medio de investigación en Inteligencia Artificial.

*Año 1970: Pascal es un lenguaje de programación desarrollado por el profesor suizo Niklaus Wirth a finales de los años 60. Su objetivo era crear un lenguaje que facilitara el aprendizaje de la programación a sus alumnos. Sin embargo con el tiempo su utilización excedió el ámbito académico para convertirse en una herramienta para la creación de aplicaciones de todo tipo.

*Año 1972: C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior es decir el lenguaje B, a su vez basado en BCPL.

*Año 1973: En 1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel Unix, originalmente escrito en el lenguaje ensamblador PDP-11/20, fue reescrita en C. Éste fue uno de los primeros núcleos de sistema operativo implementados en un lenguaje distinto al ensamblador.

*Mediados de la década de los 70s: Scheme es un lenguaje de programación. Es un lenguaje funcional (si bien impuro, ya que, por ejemplo, sus estructuras de datos no son inmutables) y un dialecto de Lisp. Fue desarrollado por Guy L. Steele y Gerald Jay Sussman en la década de los setenta e introducido en el mundo académico a través de una serie de artículos conocidos como los Lambda Papers de Sussman y Steele.

*Año 1978: En 1978, Ritchie y Brian Kernighan publicaron la primera edición de El lenguaje de programación C, también conocido como La biblia de C. Este libro fue durante años la especificación informal del lenguaje. El lenguaje descrito en este libro recibe habitualmente el nombre de "el C de Kernighan y Ritchie" o simplemente "K&R C"

*Año 1979: ADA Ada es un lenguaje de programación orientado a objetos y fuertemente tipado de forma estática que fue diseñado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa de los Estados Unidos. Es un lenguaje multipropósito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++

*Finales de la década de los 70s: A finales de la década de 1970, C empezó a sustituir a BASIC como lenguaje de programación de microcomputadores predominante.

*Década de los 80s: Bjarne Stroustrup empezó a trabajar con algunos compañeros de Bell Labs para añadir funcionalidades de programación orientada a objetos a C. El lenguaje que crearon, llamado C++, es hoy en día el lenguaje de programación de aplicaciones más común en el sistema operativo Microsoft Windows

*Año 1983: C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.

*Año 1984: MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M). Está disponible para las plataformas Unix, Windows y Apple Mac OS X.Entre sus prestaciones básicas se hallan: la manipulación de matrices, la representación de datos y funciones, la implementación de algoritmos, la creación de interfaces de usuario (GUI) y la comunicación con programas en otros lenguajes y con otros dispositivos hardware.

*Año 1987: Perl es un lenguaje de programación diseñado por Larry Wall en 1987. Perl toma características del lenguaje C, del lenguaje interpretado shell (sh), AWK, sed, Lisp y, en un grado inferior, de muchos otros lenguajes de programación. Estructuralmente, Perl está basado en un estilo de bloques como los del C o AWK, y fue ampliamente adoptado por su destreza en el procesado de texto y no tener ninguna de las limitaciones de los otros lenguajes de script.

*Año 1989: Tras un proceso largo y arduo, se completó el estándar en 1989 y se ratificó como el "Lenguaje de Programación C" ANSI X3.159-1989. Esta versión del lenguaje se conoce a menudo como ANSI C, o a veces como C89 (para distinguirla de C99).

*Año 1990: En 1990, el estándar ANSI (con algunas modificaciones menores) fue adoptado por la Organización Internacional para la Estandarización (ISO) en el estándar ISO/IEC 9899:1990. Esta versión se conoce a veces como C90. No obstante, "C89" y "C90" se refieren en esencia al mismo lenguaje.

*Año 1991: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria.

*Año 1995: PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt oGTK+.

*Año 1999: C# (pronunciado si sharp en inglés) es un lenguaje de programación orientado a objetosdesarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO. En enero de 1999, Anders Hejlsberg formó un equipo con la misión de desarrollar un nuevo lenguaje de programación llamado Cool (C Orientado a Objetos). Este nombre tuvo que ser cambiado debido a problemas de marca pasando a llamarse C♯ aunque habitualmente se escribe C#.1 La biblioteca de clases de la plataforma .NET fue migrada entonces al nuevo lenguaje.

*Año 2000: Tras el proceso de estandarización de ANSI, la especificación del lenguaje C permaneció relativamente estable durante algún tiempo, mientras queC++ siguió evolucionando. Sin embargo, el estándar continuó bajo revisión a finales de la década de 1990, lo que llevó a la publicación del estándar ISO 9899:1999 en 1999. Este estándar se denomina habitualmente "C99". Se adoptó como estándar ANSI en marzo de 2000.

*Año 2001: C♯, como parte de la plataforma .NET, está normalizado por ECMA desde diciembre de 2001.

*Año 2005: El 7 de noviembre de 2005 salió la versión 2.0 del lenguaje que incluía mejoras tales como tipos genéricos, métodos anónimos, iteradores, tipos parciales y tipos anulables.

*Año 2007: El 19 de noviembre de 2007 salió la versión 3.0 de C# destacando entre las mejoras los tipos implícitos, tipos anónimos y LINQ (Language Integrated Query -consulta integrada en el lenguaje).

Programar es hacer que la computadora siga una serie de instrucciones bien detalladas. Usando un lenguaje de programación indicamos a la computadora qué tiene que suceder en cada momento, y cómo debe de reaccionar ante la interacción con el usuario.

Se conoce como programación de computadoras a la implementación de un algoritmo en un determinado lenguaje de programación, conformando un programa.

Programa

Concepto desarrollado por Von Newmann en 1946. Se define como la unión de una secuencia de instrucciones que una computadora puede interpretar y ejecutar. Y una o varias estructuras de datos que almacenan la información independiente de las estructuras que dicha secuencia de instrucciones maneja.

Según Niklaus Wirth, un programa está formado por algoritmos y estructuras de datos.


Lenguaje de Programación

Es la traducción del lenguaje "hombre" al lenguaje "máquina", el cual tiene un número limitado de datos y palabras.
Está constituido por un conjunto de reglas:

1. Sintácticas. Especifican la formación de instrucciones válidas
2. Semánticas. Especifican el significado de estas instrucciones

5F7P

Transferir archivos de una computadora remota a otra.
sftp (espacio) usuario @ computadora

Para obtener el archivo: get (espacio) nombre de archivo

55H

Secure Shell

Es un programa que permite la conexión segura con otra computadora con el objetivo de compartir recursos. La sintaxis es la siguiente:
ssh (espacio) usuario @ computadora

miércoles, 24 de febrero de 2010

3L3M3N705 L3X1C05 D3 UN PR06R4M4

1.- Comentario: Anotaciones para documentar el programa. Existen 2 formas de colocar un comentario
// Para un renglón
/* Para más de un renglón */

2.- Palabras reservadas: Palabras que tienen un determinado significado para el compilador.

3.- Identificadores: Nombres que los programadores dan a los diferentes elementos de un programa. Deben de tener las siguientes características:
* Letras, dígitos o caracteres
* Diferentes a las palabras reservadas
* No comenzar con dígitos
* Sensible a mayúscilas y minúsculas
* Deben de contener nombres significativos

4.- Operadores y punteros: Los operadores indican las operaciones y los punteros agrupan o separan. { }

5.- Literales: Valores constantes escritos directamente en el programa

6.- Directivas del preprocesador: Instrucciones al compilador, comienzan con un #

Sentencias y bloques

La sentencia es la representación de una acción o secuencia de acciones ejecutables (operaciones) o no ejecutables (declaraciones).
Los bloques son grupos de sentencias delimitadas por llaves.

Método Main

Es el punto de entrada al programa y la ejecución siempre inicia en el método main. El método main debe ser:
* Declarado static en una clase o estructura, debe regresar void o int.
* Debe ser escrito Main con mayúscula y puede no tener parámetros y recibir un arreglo de strings

martes, 23 de febrero de 2010

5CR1P75

ps (espacio) -U (espacio) alumno:

PID (process ID) muestra el programa o proceso que está corriendo
CMD: muestra la ruta de acceso del proceso

kill (espacio) numero de proceso: detener un proceso
open (espacio) / ruta de acceso: abrir una aplicación

Un script es un conjunto o secuencia de instrucciones almacenadas en un archivo que el SO puede ejecutar
Un script puede contener:
*comandos de UNIX
*variables, constantes y cualquier otra herramienta de un lenguaje de programación.

Un script puede ser generado desde cualquier editor de textos

miércoles, 17 de febrero de 2010

4CL

Una Lista de Control de Acceso o ACL (del inglés, Access Control List) es un concepto de seguridad informática usado para fomentar la separación de privilegios. Es una forma de determinar los permisos de acceso apropiados a un determinado objeto, dependiendo de ciertos aspectos del proceso que hace el pedido.
Las ACLs permiten controlar el flujo del tráfico en equipos de redes, tales como routers y switches. Su principal objetivo es filtrar tráfico, permitiendo o denegando el tráfico de red de acuerdo a alguna condición. Sin embargo, también tienen usos adicionales, como por ejemplo, distinguir "tráfico interesante" (tráfico suficientemente importante como para activar o mantener una conexión) en ISDN.

La utilidad setfacl configura ACLs para archivos y directorios. Utilice la opción -m o modifique el ACL de un archivo o directorio:

setfacl -m
Las reglas () deben ser especificadas en los formatos siguientes. Se pueden especificar múltiples reglas en el mismo comando si estas se encuentran separadas por comas.

u::
Configura el acceso ACL para un usuario. Se debe especificar el nombre del usuario o su UID. El usuario puede ser cualquier usuario válido en el sistema.

g::
Configura el acceso ACL para un grupo. Se debe especificar el nombre del grupo o su GID. El grupo puede ser cualquier grupo válido en el sistema.

m:
Configura la máscara de derechos efectivos. La máscara es la unión de todos los permisos del grupo propietario y todas las entradas del usuario y grupo.

o:
Configura el acceso ACL para otros usuarios que no esten en el grupo para el archivo.

Se ignoran los espacios en blanco. Los permisos () deben ser una combinación de caracteres r, w y x para lectura, escritura y ejecución.

Si un archivo o directorio ya tiene una ACL y se usa el comando setfacl, se añaden las reglas adicionales al ACL existente o la regla existente es modificada.

jueves, 4 de febrero de 2010

M0D05 D3 4RCH1V0

Para cambiar permisos
chmod (espacio) número de modo (espacio) nombre del archivo

P3RM1505

ls (espacio) -l: da info de un modo largo, información de lo que hay. Si aparece como primer caracter una d es un directorio y si es un guión es un archivo.

Los siguientes 9 caracteres son los permisos. Los permisos son de 3 tipos: de lectura (r), escritura (w) y de ejecución (x). A estos permisos se les agrega que hay 3 perfiles de usuario: dueño del archivo o directorio, grupo y todos los demás.
Los 3 primeros caracteres después del guión o la d son permisos del dueño, los siguientes 3 son del grupo y los últimos 3 son de todos los demás.

Lectura:
En las posiciones 1, 4, 7. aparece una r (otorgado) o un guión (no hay permiso).

Escritura:
En las posiciones 2, 5, 8. aparece una w (otorgado) o un guión (no hay permiso).

Ejecución:
En las posiciones 3, 6, 9. aparece una x (otorgado) o un guión (no hay permiso).

martes, 2 de febrero de 2010

M4N3J4D0R35 D3 73X70

Existen 3 tipos de manejadores de texto
* Maquetadores: Quark XPress, In Design
* Procesadores: Word, Pages, Neo Office
* Editores: Text Edit, Bloc de Notas, vi, emacs, nano