<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://miguelangel.torresegea.es/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://miguelangel.torresegea.es/wiki/feed.php">
        <title>miguel angel torres egea</title>
        <description></description>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <image rdf:resource="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png" />
       <dc:date>2026-06-26T07:24:46+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:iterables?rev=1759134237&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:start?rev=1771488008&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:thinkpython?rev=1654853278&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:strings?rev=1728546797&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:json:start?rev=1585124609&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:aberraciones?rev=1728466008&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:angular:directivas?rev=1581288362&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:angular:formularios?rev=1581356727&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:java:enum?rev=1528192915&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:jquery:start?rev=1779357605&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:markdown:start?rev=1731848297&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:pycurl?rev=1725268712&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:java:frameworks:swing?rev=1526807723&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:php:codeigniter:v4:model?rev=1780907507&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png">
        <title>miguel angel torres egea</title>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <url>https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png</url>
    </image>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:iterables?rev=1759134237&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-29T08:23:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python iterables</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:iterables?rev=1759134237&amp;do=diff</link>
        <description>Python iterables

python

	*  &lt;https://kinsta.com/es/blog/iterables-de-python/&gt;
	*  &lt;https://ellibrodepython.com/iterator-python&gt;

iterables

even_list = [2, 4, 6, 8, 10]
my_iterator = iter(even_list)
print(next(my_iterator)) # Prints 2
print(next(my_iterator)) # Prints 4
print(next(my_iterator)) # Prints 6


funciones sobre iterables

	*  sum — Devuelve la suma de un iterable dado, siempre que la colección sea de tipos numéricos (enteros, valores de coma flotante y números complejos)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:start?rev=1771488008&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-19T08:00:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>PYTHON</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:start?rev=1771488008&amp;do=diff</link>
        <description>PYTHON

development python

doc

	*  Curso python (PCPP1) PUE 2023
	*  Curso python PUE 2022
	*  Curso python udemy

install

best practices

	*  entornos virtuales: Python: Entornos virtuales
	*  paquetes: Python pip
	*  instalar varias versiones python: &lt;https://medium.com/@julgq/instalando-m%C3%BAltiples-versiones-de-python-en-linux-ubuntu-20-04-2-lts-9f163c046cc5&gt;
	*  How to use Python’s py launcher for Windows: &lt;https://www.infoworld.com/article/3617292/how-to-use-pythons-py-launcher-for-wi…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:thinkpython?rev=1654853278&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-10T09:27:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>think python</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:thinkpython?rev=1654853278&amp;do=diff</link>
        <description>think python

python

cadenas

	*  inmutables
	*  &lt;string&gt;[char]
		*  -1 : last
		*  -2 : pre-last

	*  &lt;string&gt;[pos1:pos2]
	*  &lt;string&gt;[:pos2], &lt;string&gt;[pos2:],&lt;string&gt;[-pos2:]
	*  &lt;string&gt;.capitalize()
	*  &lt;string&gt;.isupper()
	*  list(cadena) : separa en caracteres</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:strings?rev=1728546797&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-10T07:53:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python strings</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:strings?rev=1728546797&amp;do=diff</link>
        <description>Python strings

python

comp

	*  Exact match (equality comparison): ==, !=
	*  Partial match: in, not in
	*  Forward/backward match: startswith(), endswith()
	*  Order comparison: &lt;, &lt;=, &gt;, &gt;=
	*  Case-insensitive comparison: upper(), lower()
	*  Regex: re.search(), re.fullmatch()</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:json:start?rev=1585124609&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-25T08:23:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>json</title>
        <link>https://miguelangel.torresegea.es/wiki/development:json:start?rev=1585124609&amp;do=diff</link>
        <description>json

development addendum

install (raspberry)


cd /tmp
wget https://github.com/stedolan/jq/releases/download/jq-1.5/jq-1.5.tar.gz
tar xfvz jq-1.5.tar.gz
cd jq-1.5
./configure &amp;&amp; make &amp;&amp; sudo make install


tutorials

	*  &lt;https://linuxhint.com/bash_jq_command/&gt;

jq (shell)

selección


{
  &quot;ACTION&quot;: &quot;domain.list&quot;,
  &quot;DATA&quot;: [
    {
      &quot;TYPE&quot;: &quot;slave&quot;,
      &quot;AXFR_IPS&quot;: &quot;none&quot;,
      &quot;DOMAIN&quot;: &quot;domain1.com&quot;,
      &quot;TTL_SEC&quot;: 0,
      &quot;SOA_EMAIL&quot;: &quot;&quot;,
      &quot;DOMAINID&quot;: 11111,
      &quot;DESCRIPT…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:aberraciones?rev=1728466008&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-09T09:26:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python aberraciones</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:aberraciones?rev=1728466008&amp;do=diff</link>
        <description>Python aberraciones

	*  operador ternario:

variable = &quot;valor&quot; if condicion_cierta() else &quot;otro_valor&quot;


	*  reducciones:
my_numbers = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
even_number_list = [num for num in my_numbers if num%2 == 0]


		*  List Comprehensions

	*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:angular:directivas?rev=1581288362&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-09T22:46:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>angular: directivas y personalización</title>
        <link>https://miguelangel.torresegea.es/wiki/development:angular:directivas?rev=1581288362&amp;do=diff</link>
        <description>angular: directivas y personalización

	*  componentes
		*  directivas con plantilla asociada
		*  son del tipo más común

	*  directivas de atributos
		*  cambian la apariencia o el comportamiento de un elemento, componente u otra directiva
		*  se usan como atributos de los elementos</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:angular:formularios?rev=1581356727&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-10T17:45:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>formularios</title>
        <link>https://miguelangel.torresegea.es/wiki/development:angular:formularios?rev=1581356727&amp;do=diff</link>
        <description>formularios

template-driven forms

	*  la plantilla es la responsable de crear los controles, formularios y reglas de validación
	*  sincronización entre la vista y el modelo con el doble enlace (two-way databinding)
		*  si la vista cambia, se actualiza el modelo, y viceversa</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:java:enum?rev=1528192915&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-06-05T10:01:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Enum</title>
        <link>https://miguelangel.torresegea.es/wiki/development:java:enum?rev=1528192915&amp;do=diff</link>
        <description>Enum

java api

revisar

	*  &lt;https://www.mkyong.com/java/java-enum-example/&gt;

ejemplos

	*  &lt;https://www.mkyong.com/java/java-enum-example/&gt;
	*  &lt;https://beginnersbook.com/2014/09/java-enum-examples/&gt;

simple




simple + campo




simple + campo + lógica




bucle




comparación



comparacion 2



string to enum</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:jquery:start?rev=1779357605&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-21T10:00:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>jquery</title>
        <link>https://miguelangel.torresegea.es/wiki/development:jquery:start?rev=1779357605&amp;do=diff</link>
        <description>jquery

&lt;https://releases.jquery.com/&gt;

datepicker

fuentes

	*  &lt;https://bootstrap-datepicker.readthedocs.io/en/latest/options.html&gt;
	*  &lt;https://uxsolutions.github.io/bootstrap-datepicker/?#sandbox&gt;
	*  &lt;https://gijgo.com/datepicker/example/bootstrap-4&gt;
	*  &lt;https://stackoverflow.com/questions/25874375/multiple-dates-in-bootstrap-date-picker&gt;

ejemplo


&lt;script&gt;
        $(&#039;#date&#039;).datepicker({
            uiLibrary: &#039;bootstrap4&#039;,
            minDate: &#039;01/01/2020&#039;,
            maxDate: &#039;31/12/2…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:markdown:start?rev=1731848297&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-17T12:58:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>markdown</title>
        <link>https://miguelangel.torresegea.es/wiki/development:markdown:start?rev=1731848297&amp;do=diff</link>
        <description>markdown

development addendum

	*  tutorial: &lt;https://www.markdowntutorial.com&gt;
	*  tutorial: &lt;https://www.markdownguide.org/&gt;
		*  &lt;https://www.markdownguide.org/cheat-sheet/&gt;

	*  cheat-sheet: &lt;https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet&gt;
	*  online: &lt;https://dillinger.io/&gt;
	*  docker: &lt;https://hub.docker.com/r/joemccann/dillinger&gt;



/vía: &lt;https://daringfireball.net/projects/markdown/syntax&gt;

/vía: &lt;http://desarrollandowebsdinamicas.blogspot.com/2013/03/escribir-archivo…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:pycurl?rev=1725268712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-02T09:18:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python PycURL</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:pycurl?rev=1725268712&amp;do=diff</link>
        <description>Python PycURL

/via: &lt;https://www.rapidseedbox.com/blog/python-curl&gt;

	*  requests: 1.6 Making life easier with the requests module

setup

	*  PycURL es un intefaz python para interactuar con cURL (más completa/compleja que requests)
	*  
sudo apt install libcurl4-openssl-dev libssl-dev

	*  
pip install pycurl


comandos básicos con requests</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:java:frameworks:swing?rev=1526807723&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-05-20T09:15:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Framework Swing</title>
        <link>https://miguelangel.torresegea.es/wiki/development:java:frameworks:swing?rev=1526807723&amp;do=diff</link>
        <description>Framework Swing

JFileChooser

	*  &lt;http://www.codejava.net/java-se/swing/show-simple-open-file-dialog-using-jfilechooser&gt;
	*  &lt;http://www.codejava.net/java-se/swing/add-file-filter-for-jfilechooser-dialog&gt;

java framework</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:php:codeigniter:v4:model?rev=1780907507&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-06-08T08:31:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>CodeIgniter v4 Model</title>
        <link>https://miguelangel.torresegea.es/wiki/development:php:codeigniter:v4:model?rev=1780907507&amp;do=diff</link>
        <description>CodeIgniter v4 Model

codeigniter

	*  conexión automática a BDD
	*  métodos CRUD básicos
	*  permite extender de otros modelos

instanciar


// Create a new class manually.
$userModel = new \App\Models\UserModel();

// Create a shared instance of the model.
$userModel = model(&#039;UserModel&#039;);
// or
$userModel = model(&#039;App\Models\UserModel&#039;);
// or
$userModel = model(\App\Models\UserModel::class);

// Create a new class with the model() function.
$userModel = model(&#039;UserModel&#039;, false);

// Create s…</description>
    </item>
</rdf:RDF>
