Librería

(1/6) > >>

@synthesize:
ATS.H

ATS es un proyecto de librería para el lenguaje de programación C. ATS significa "Alternative to Standard" (Alternativa al estándar) y tiene como propósito recoger algunas funciones útiles y sencillas, pero pesadas a la hora de ser escritas.


Colaboradores:

Creador: GNU_López (Sergio López)Colaborador: nicolas_cofColaborador: DidacsoColaborador: eagle17...
Discursiones sobre Funciones y procedimientos:

atsInNum() http://foro.elhacker.net/programacion_cc/atsinnum-t295749.0.html

/**********************************************/

Si quieres colaborar, envíame un MP y te añadiré a la lista.


¿Qué va a ser ats?

Mi idea es crear un archivo de cabecera libre para el lenguaje de programación C, que ofrezca varias funciones nuevas, y la sustitución de algunas estándar para poder darlas un mayor uso. Cualquier persona puede colaborar, tanto aportando ideas, como aportando código, corrigiendo fallos, escribiendo archivos de ayuda, etc.

¿Qué funciones podré usar?

(Esta explicación va a variar dependiendo del desarrollo de la cabecera) Lo ideal es ofrecer una lista de funciones matemáticas, y de entrada y salida de datos.


Página en SourceForge:

http://atshead.sourceforge.net/

Prototipo:

http://sourceforge.net/projects/atshead/files/prototype.c/download


Especificaciones de Diseño: (Escribiendo...)

En este documento es especifica la forma en la que se debe escribir funciones
para la cabecera ats. Esto es necesario para que no se mezclen todos los estilos
de programación de todos los colaboradores que escriban código; De esta forma,
se mantendrá un orden interno en cuanto a la estructura.

1. Comentarios

* Se debe especificar en cada prototipo de función, con un comentario, la utilidad
  de la misma. En caso de ser una función muy grande/usada dentro de la cabecera,
  el comentario debe especificar también la forma de usar los parámetros, el trabajo
  interno, y los valores de retorno.

* Es aconsejable también comentar en las variables muy usadas o importante, explicado
  para que las usamos.

* Es conveniente también que los comentarios estén en inglés, pues es el idioma mas usado
  en la programación, aunque, no estaría de mas que estuviera tanto en Castellano como en Inglés,
  siendo aśi de fácil lectura para un grupo mas grande de usuarios.

2. Identificadores

* Es conveniente usar identificadores que no puedan ser usados por otras librerías, por
  ello es recomendable seguir este modelo:

- Ejemplo de prototipo de función:
Código
       int ats_pedir_enteros(int a, int b)

  Nótese el uso de 'ats_' al principio, y que el nombre de la función describe también el
  funcionamiento de la misma.

3. Funciones

* Todas las funciones usadas deben ser estándar, así como tienen optimizadas para ser usadas
  en la mayor cantidad de compiladores/sistemas. Es necesario no usar funciones como system
  o fflush.

4. Diseño

* La cabecera tendrá la siguiente forma:

Inicio
|
|_ Cabeceras estándar (#include...)
|_ Definidos (#define...)
|
|
|_ Preámbulo
|
|
|_ Prototipos de función
|_ Comentarios de funciones importantes
|
|
|_ Funciones
|
|
|_ Referencia para programadores (Explicación sencilla sobre el uso de ats)
|
|_ EOF

5. Algunos consejos

* Es conveniente no usar, bajo ningún concepto, bucles infinitos o descontrolados,
  así como intentar optimizar el código al máximo,de tal forma que intentemos ahorrar
  código y mejorar la funcionalidad. Así mismo, es importante intentar no usar recursividad,
  identificadores de variables repetidos, o funciones con semejante funcionamiento.

  Escrito y corregido por: Sergio L, Nicolás.


Proyecto


Preámbulo de la cabecera:

Citar

/*
* ATS.h
* Alternative to Standard Head
*
* ats es una cabecera libre (Bajo licencia GPLv3)
* la cual provee varias funciones. La idea
* principal, es que estas funciones sean matemáticas
*  y de entrada/salida, bajo plataformas
* GNU/Linux.
*
* Se puede seguir su desarrollo en elhacker.net
* y en sourceforge.net.
*
* Creada inicialmente por: Sergio López
*
* sergiolopezsanz@hotmail.es
*
* http://atshead.sourceforge.net/
*
* 24 de Mayo, 2010
*
*/



El contenido del post puede variar, acorde al desarrollo de la cabecera ATS. Los archivos de ATS están bajo licencia pública GPLv3.

leogtz:
¿Funciones de qué tipo?

@synthesize:
Cita de: Leo Gutiérrez. en 23 Mayo 2010, 01:29 am

¿Funciones de qué tipo?


últimamente estoy necesitando muchas de estilo entrada de datos(Sobretodo funciones con cadenas :-\ ) Y pensé en hacerme una buena librería para no tener que reescribir código tantas veces. Es solo un ejemplo, supongo que lo bueno sería ver que cosas suele querer la gente, e intentar adaptarlo..

nicolas_cof:
Mmmmmm parece interesante la idea GNU López

Yo dejo mi primer aporte! Lo que si mas o menos tendrias que tirar los paremetros de las funciones y el objetivo de cada una de las que piensas incluir en dicha libreria para que las podamos programar :P

Código:

void
cleanstdin()
{
    int ch;

    while ( ( ch = fgetc( stdin ) ) != EOF && ch != '\n' );
}

Salu10.

Littlehorse:
Primero y principal hay que aclarar varias cosas:

Lo primero es quienes van a participar, de lo contrario cualquiera va a llegar y a poner un código sin siquiera tal vez conocer los requisitos para poner un código. Seria un desorden.

Por otro lado, respecto de los requisitos, lo ideal es que cada usuario que codifique su función haga como mínimo una documentación de como se utiliza, sus parámetros y su valor de retorno.

Otra cosa importante es que las funciones estén testeadas y elaboradas. Control de parámetros por ejemplo, valores de retorno útiles y demás. Nada de funciones void copiarcad y un for, por si va a ser así la verdad no tiene ningún sentido.

Como bien dijo Nico, hay que dejar en claro cual es el objetivo general de las funciones, para asi cada uno puede ir viendo que hacer y que no.

No se si tendré tiempo de codificar algo, tal vez el fin de semana. Igualmente pasare cada tanto para revisar los códigos. ;D

Saludos!

Navegación

[0] Índice de Mensajes

[#] Página Siguiente