• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

teckV

SuperPoderes - Arquitectura

1 mensagem neste tópico

falta falar naquele que é para mim um dos pontos mais fortes do Python... o facto de ser em "Código Aberto" / "Open Source"

sim... é isso mesmo que estão a pensar... a linguagem está praticamente toda em código fonte em módulos em c++ e a maior parte em Python... maravilhoso e têm tudo de bom pois não só se pode aprender com os interiores da linguagemos modulos superiores são excelentes sitios para se aprender e procurar coisas como o ftplibcomo se pode alterar a nosso gosto... muito poderosos estes pormenores...

a arquitectura do Python:

o python fica instalado numa pasta tipo C:\Python24

nesta pasta estão subpastas com os modulos extenciveis e o proprio python:

C:\Python24\include    >> modulos de c++ com os interiores da linguagem Python

ex: py_courses.h

#define NoArgTrueFalseFunction(X) \
static PyObject *PyCurses_ ## X (PyObject *self) \
{ \
  PyCursesInitialised \
  if (X () == FALSE) { \
    Py_INCREF(Py_False); \
    return Py_False; \
  } \
  Py_INCREF(Py_True); \
  return Py_True; }

puro c++ como se pode ver... quem sabe c++ está como peixe na agua em Pythonmas não é preciso saber.

C:\Python24\Lib     >>  modulos em python como o urllib ou httplib - módulos que se importam nos programas em Python que "encombrem" as partes mais complexas do desenvolvimento.

ex:  BaseHTTPserver.py

 def send_response(selfcodemessage=None):
        """Send the response header and log the response code.

        Also send two standard headers with the server software
        version and the current date.

        """
        self.log_request(code)
        if message is None:
            if code in self.responses:
                message = self.responses[code][0]
            else:
                message = ''
        if self.request_version != 'HTTP/0.9':
            self.wfile.write("%s %d %s\r\n" %
                             (self.protocol_versioncodemessage))
            # print (self.protocol_versioncodemessage)
        self.send_header('Server'self.version_string())
        self.send_header('Date'self.date_time_string())

400: ('Bad request',
              'Bad request syntax or unsupported method'),

puro Pythoneste código foi tirado do módulo BaseHTTPServer.py > """HTTP server base class.

este modulo cria um serviço servidor de HTTP. podem aprender e alterar criando um servidor HTTP personalizado.

ex: cmd.py

while not stop:
                if self.cmdqueue:
                    line = self.cmdqueue.pop(0)
                else:
                    if self.use_rawinput:
                        try:
                            line = raw_input(self.prompt)
                        except EOFError:
                            line = 'EOF'

um interpretador de comandos (shell) que se pode tambem alterar.. muito util...

agora entendem porque é a linguagem topo neste momento para os "penetration Testers"

vale a pena dedicarem tempo a esta linguagem.. está mais que aprovada

h2k5 - [teckViriathus][/code]

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora