Ir para conteúdo
Fórum Script Brasil

ursolouco

Veteranos
  • Total de itens

    2.314
  • Registro em

  • Última visita

Posts postados por ursolouco

  1. Em 09/06/2018 em 12:26, gustavocanalli@MSN.com disse:

    Boa noite pessoal.

    Estou desenvolvendo uma aplicação de controle de finanças com receitas, despesas, transferências entre contas, relatórios e gráficos em angularjs + webapi + ddd + automapper + injeção de dependencias para estudo de novas tecnologias, pois trabalho atualmente com WebForms.

    Criei todas as (Domais, Applications, Services, Repository, etc).

    A minha grande dúvida é a seguinte:
    Nas telas de cadastro eu basicamente retorno o objeto inteiro no controller de cada entidade (domain), Mas na tela de gráfico por tipo de despesa por exemplo, não consigo fazer dessa forma, pois preciso retornar o valor total de despesas cadastradas para cada tipo em determinado período.
    No WebForms eu criaria uma classe personalizada com os campos necessários e faria um select new { } direto no link setando o valor de cada campo, porém, no ddd me vejo obrigado a instanciar os campos fixos do domain.
    Existe alguma forma de criar uma view personalizada para o retorno de uma consulta?

    Salve,

    Estude um pouco o conceito sobre "View Model" que irá ajudar a resolver seu problema contextual.

    Não há problemas em retornar entidades para view mas pela organização e testes nas camadas (claro você fez isso, não?) os itens devem ser testado individualmente (ex: testar a camada de acesso a dados e ter certeza que os repositórios estão retornando as informações de forma correta).

    Ah, não se esqueça:

    MVC é um padrão arquitetural e não é obrigatório sempre um controlador enviar uma entidade para um modelo (no começo está pratica é normal).

    Espero ter ajudado,

    Abraços!

  2. Salve,

    Pessoal, estou com 8gb (2 x 4gb) de memória RAM (DDR3 - kvr13n9s8/4) para vender. Eu acabei comprando errado as memórias para minha máquina antiga e elas estão lá paradas.

    Estou aqui em são paulo (zona leste) e se alguém tiver interesse, só enviar um e-mail para  "wellingtonbr [at] gmail [dot] com".

    Preço: R$ 230.00 + Frete (se estiver na zona leste, podemos ver um local para que eu possa fazer a entrega).

    Notas aos espertos: Só estarei enviando ou entregando o produto após a compensação do valor em conta ou pagamento a vista.

    Algumas fotos: http://desenvolvendosites.com/tmp/m.zip

    Abraços!

  3. Brother,

    Não sei mas para tal cenário ou montaria uma tabela temporária, jogaria o resultado de cada select para coluna e retornaria o conteúdo como saída de uma proc.

    OBS: Não vou fazer o SQL para você, mas a lógica esta descrita acima, agora é só executar.

    []s

    Até mesmo dá para você colocar estes "SUM" em colunas diferentes já que o agrupamento de dados é o mesmo 

    []s

  4. Em 08/12/2015 at 18:48, huntressrr disse:

    Bom estou começando um curso de TI, e queria saber qual as diferenças entre banco de dados para web e banco de dados para dektop? procurei na internet mas esta muito confuso, não consegui  diferenciar um do outro. Sei que existe Oracle, my sql Acess, sql server. Eles server para os 2?

    Brother,

    Quando você ler "aplicações desktop" são aplicações que ficam instaladas direto no disco rígido da máquina e rodam localmente (com ou sem a máquina estar ligado diretamente a uma rede de comunicação). As "aplicações web" são sistemas que você acessa via qualquer dispositivo que está conectado a internet.

    []s

  5. Salve,

    Não sei se entendi errado mas quem possui o tipo de dados é o SGDB e não a ferramenta front que está usando.

    Qual tipo de dados você está consultando e não está conseguindo visualizar no YOG?

    []s

  6. Salve, 

     

    Esses dias precisei ordenar uma coluna de texto (string) delimitada no SQL Server.

     

    /**
     * funcOrdenaTextoDelimitado()
     *
     * ordena o conteúdo de uma string
     *
     * @author wellington rodrigues
     */
    create function dbo.funcOrdenaTextoDelimitado(@texto varchar(4000), @separador varchar(1)) returns varchar(4000)
    as
    begin
    	declare @tmp_table table(texto varchar(4000));
    	declare @posicao_delimitador int = 1;
    	declare @inicio_pesquisa int = 1;
    	declare @subtexto varchar(4000);
    	set @texto = @texto + @separador;
    	declare @texto_ordenado varchar(4000) = '';
    	while charindex(@separador, @texto, @inicio_pesquisa) > 	
    		begin
    			set @posicao_delimitador = charindex(@separador, @texto, @inicio_pesquisa);
    			set @subtexto = substring(@texto, @inicio_pesquisa, @posicao_delimitador - @inicio_pesquisa);			
    			insert into @tmp_table(texto) values(@subtexto);
    			set @inicio_pesquisa = @posicao_delimitador + 1;
    	end	
    	set @texto_ordenado = stuff((select coalesce(texto + @separador, '') from @tmp_table order by ltrim(rtrim(texto)) asc for xml path('')), 1, ,'');
    	set @texto_ordenado = substring(@texto_ordenado, , len(@texto_ordenado));
    	return @texto_ordenado;
    end
    go

    Espero que possa ser útil.

    []s

  7. Em 14/03/2016 at 11:31, Paulo Cesar de Oliveira disse:

    Opá!!

    Meu amigo deu certo, muito bom. salvou meu dia!!

    Só mais uma duvida!!

    Toda vez que é executado o script do ajax utilizando a  propriedade  async: false, quer dizer que o script e executado sempre antes do carregamento da pagina ???

    ou

    A  propriedade  async: false, é sempre executada depois do carregamento da pagina ???

    Muito obrigado!!!

     

     

     

    Salve,

    A propriedade "async" informa ao objeto responsável do browser (que faz a requisição XMLHTTPRequest) que a requisição deve ser ou não assíncrona.

    Mas devido a muitos anos de experiência nesta industria vital, sei que diversos programadores vão vão ser perguntar:

    O que é uma requisição assíncrona?

    Uma requisição assíncrona, de um modo "bem simples" de dizer é o envio de uma requisição pelo browser para um URL e avançar a execução do <script> para a linha seguinte (ou seja, o browser não espera a requisição concluir para avançar para a próxima instrução da programação).

    []s

  8. Oi Paty,

    Agora que observei sua pergunta melhor...."DataGridView" (WindowsForms).... vou pensar em algo por aqui e posto depois.

     

    []s

        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                using (var conn = new SqlConnection("Data Source=WELLINGTON-PC\\SQLEXPRESS; Initial Catalog=Northwind; Integrated Security=true;"))
                {
                    var da = new SqlDataAdapter("SELECT CategoryId, CategoryName, Description FROM Categories ORDER BY CategoryName", conn);
                    var ds = new DataSet();
                    da.Fill(ds, "Categories");
                    dataGridView1.DataSource = ds;
                    dataGridView1.DataMember = "Categories";
                }
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                printDocument1.Print();
            }
    
            private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
            {
                Bitmap bm = new Bitmap(this.dataGridView1.Width, this.dataGridView1.Height);
                dataGridView1.DrawToBitmap(bm, new Rectangle(0, 0, this.dataGridView1.Width, this.dataGridView1.Height));
                e.Graphics.DrawImage(bm, 0, 0);
            }
        }

     

  9. Salve,

    Precisa mesmo ser em .net? 

    Não seria melhor jogar este conteúdo em uma div e depois chamar o método "Print()" do objeto "Window" em javascript ?

    Exemplo:

    Default.aspx.cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    namespace Impressao
    {
        public partial class Default : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                List<string> content = new List<string>() { "estou com preguiça", "de pensar no momento" };
                GridView1.DataSource = content;
                GridView1.DataBind();
            }
        }
    }

    Default.aspx

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Impressao.Default" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script   src="https://code.jquery.com/jquery-1.12.1.js"   integrity="sha256-VuhDpmsr9xiKwvTIHfYWCIQ84US9WqZsLfR4P7qF6O8="   crossorigin="anonymous"></script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div id="relatorio">
            <asp:GridView ID="GridView1" runat="server">
            </asp:GridView>    
        </div>
        <input id="btnImprimir" type="button" value="Imprimir" />
        </form>
    </body>
    </html>
    <script>
        $(document).ready(function () {
            $('#btnImprimir').on('click', function (event) {
                event.preventDefault();
                event.stopPropagation();
                window.open('Impressao.aspx', 'Impressao', null, true);
                return false;
            });
        });
    </script>

    Impressao.aspx

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Impressao.aspx.cs" Inherits="Impressao.Impressao" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script   src="https://code.jquery.com/jquery-1.12.1.js"   integrity="sha256-VuhDpmsr9xiKwvTIHfYWCIQ84US9WqZsLfR4P7qF6O8="   crossorigin="anonymous"></script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div id="conteudo_relatorio"></div>
        </form>
    </body>
    </html>
    <script>
        $(document).ready(function () {
            if (window.opener != null) {
                var relatorio = window.opener.document.getElementById('relatorio');
                if (relatorio) {
                    document.getElementById('conteudo_relatorio').innerHTML = relatorio.innerHTML;
                    window.print();
                }
            }
        });
    </script>

     

  10. SELECT 
        ID,
        VENCIMENTO,
        DATEDIFF(NOW(), VENCIMENTO)
    FROM 
        DEMO 
    WHERE
        DATEDIFF(NOW(), VENCIMENTO) <= 60
    ORDER BY 
        ID ASC;

    Alternativa!

    SELECT 
        ID,
        VENCIMENTO,    
        DATEDIFF(NOW(), DATE_SUB(NOW(), INTERVAL 60 DAY)) AS VENCIMENTO_MINIMO,        
        DATEDIFF(NOW(), VENCIMENTO) AS DIFERENCA_DIA
    FROM 
        DEMO 
    WHERE
        DATEDIFF(NOW(), VENCIMENTO) <= 60
    ORDER BY 
        ID ASC;

     

  11. 
    USE test;
    
    CREATE TABLE DEMO(
        ID INT NOT NULL AUTO_INCREMENT,
        VENCIMENTO DATE,
        CONSTRAINT PK_DEMO PRIMARY KEY(ID)
    )
    
    INSERT INTO DEMO (VENCIMENTO) VALUES('2016-01-11');
    INSERT INTO DEMO (VENCIMENTO) VALUES('2016-01-12');
    INSERT INTO DEMO (VENCIMENTO) VALUES('2016-01-13');
    
    SELECT 
        NOW(), 
        DATE_SUB(VENCIMENTO, INTERVAL 60 DAY), 
        VENCIMENTO 
    FROM 
        DEMO 
    WHERE 
        VENCIMENTO BETWEEN DATE_SUB(VENCIMENTO, INTERVAL 60 DAY) AND NOW()
    ORDER BY 
        ID ASC;

     

  12. INSERT INTO COMPRAS (CLIENTE, DATA_COMPRA)VALUES('MARIA', '2016-01-13');
    <?php
    error_reporting(E_ALL ^ E_DEPRECATED);
    function showReport(){
        mysql_connect('localhost', 'root', '');
        mysql_select_db('test');
        $r = mysql_query('SELECT DISTINCT DATA_COMPRA FROM COMPRAS ORDER BY DATA_COMPRA DESC');
        echo '<table>';
        if($r!=null){
            while($reg = mysql_fetch_assoc($r)){
                echo '<tr>';
                echo '<td>', $reg['DATA_COMPRA'];
                $clientes = mysql_query('SELECT CLIENTE FROM COMPRAS WHERE DATA_COMPRA = "'. $reg['DATA_COMPRA'] .'" ORDER BY CLIENTE ASC;');
                if($clientes != null){
                    echo '<ul>';
                    while($cliente = mysql_fetch_assoc($clientes)){
                        echo '<li>'.$cliente['CLIENTE'].'</li>';
                    }
                    echo '</ul>';
                }
                echo '</td>';
                echo '</tr>';
            }
        }else{
            echo '<tr><td>Não existe pedido na tabela de compras</td></tr>';
        }
        echo '</table>';
        mysql_close();
    }
    showReport();
    ?>

    []s

    []s

    Sem título.png

  13. Manoel,

    Você pode resolver da seguinte forma:

    1) SELECT CLIENTE, DATA_COMPRA FROM COMPRAS ORDER BY DATA_COMPRA DESC, CLIENTE ASC

    E no PHP, durante o loop, você verifica a mudança de data para abrir e fechar linha da tabela no relatório

    2) SELECT DISTINCT DATA_COMPRA FROM COMPRAS ORDER BY DATA_COMPRA DESC

    Durante o loop, você terá que ir novamente ao banco de dados localizar todos cliente com base na DATA do loop (internament seria +/- assim 

    SELECT CLIENTE FROM COMPRAS WHERE DATA_COMPRA = $data_da_compra ORDER BY CLIENTE ASC;

    []s

    <?php
    error_reporting(E_ALL ^ E_DEPRECATED);
    function showReport(){
        mysql_connect('localhost', 'root', '');
        mysql_select_db('test');
        $r = mysql_query('SELECT DISTINCT DATA_COMPRA FROM COMPRAS ORDER BY DATA_COMPRA DESC');
        echo '<table>';
        if($r!=null){
            while($reg = mysql_fetch_assoc($r)){
                echo '<tr>';
                echo '<td>', $reg['DATA_COMPRA'];
                $clientes = mysql_query('SELECT CLIENTE FROM COMPRAS WHERE DATA_COMPRA = "'. $reg['DATA_COMPRA'] .'" ORDER BY CLIENTE ASC;');
                if($clientes != null){
                    echo '<ul>';
                    while($cliente = mysql_fetch_assoc($clientes)){
                        echo '<li>'.$cliente['CLIENTE'].'</li>';
                    }
                    echo '</ul>';
                }
                echo '</td>';
                echo '</tr>';
            }
        }else{
            echo '<tr><td>Não existe pedido na tabela de compras</td></tr>';
        }
        echo '</table>';
        mysql_close();
    }
    showReport();
    ?>
    CREATE TABLE COMPRAS(
        ID INT NOT NULL AUTO_INCREMENT,
        CLIENTE NVARCHAR(100),
        DATA_COMPRA DATE,
        CONSTRAINT PK_COMPRAS PRIMARY KEY(ID)
    )
    
    INSERT INTO COMPRAS (CLIENTE, DATA_COMPRA) VALUES('CARLOS', '2016-01-11');
    INSERT INTO COMPRAS (CLIENTE, DATA_COMPRA)VALUES('ANTONIO', '2016-01-11');
    INSERT INTO COMPRAS (CLIENTE, DATA_COMPRA)VALUES('MANOEL', '2016-01-12');

     

  14. Salve,

    Pega o conteúdo da sua variável url, jogue no browser e veja se está saindo conteúdo.

    Outro detalhe, sua chamada é assíncrona, até que a mesma se complete o conteúdo de "registroJson" ainda será um array vazio.

    Se você quer dar sequencia no seu código experimente algo como:

    var registroJson = [];
    var url = 'xpto';
    $(document).ready(function(){
        $.ajax({
            url: url,
            async: false,
            dataType: 'json',
            success:function(response){
                if(response){
                    registroJson = response;
                }
            }
        });
        console.log(registroJson)
    });

     

  15. 3 horas atrás, duduripoll disse:

    Pessoal, preciso de uma ajuda de vocês. Tenho uma tabela MYSQL com registros de clientes . Gostaria de saber como separar o resultado da consulta em grupos por data da compra (php). Exemplo:

    13/03/2016:
    - JOAO DA SILVA 
    - MARIA DA SILVA

    --------------------------------
    14/03/2016
    - ANTONIO DE SOUZA
    - PAULO ROGERIO

    --------------------------------

    15/03/2016:

    - FLAVIO CAMPOS

    --------------------------------

    Grato

    Salve,

    Estou enferrujado para o PHP, mas olha um exemplo abaixo:

    <?php
    function bgcolor($index, $cor1 = '#F1F1F1', $cor2 = '#FFFFFF'){
        return ((($index % 2) == 0) ? $cor1 : $cor2);
    }
    function data2Br($dbDate){
        return implode ('/',  array_reverse(explode('-', $dbDate)));
    }
    function searchClientByDate($dbDate){
        $clientes = array();
        array_push($clientes,
            array('nome' => 'BLA, BLA, BLA')
        );
        /* arqui você coloca sua lógica para localizar seus clientes */
        return $clientes;
    }
    function showRel($beginDate, $endDate = null){
        echo '<table border="1" width="100%">';
        try{
            if(!$endDate){
                $endDate = date('Y-m-d');
            }
            if(strtotime($beginDate)>strtotime($endDate)){
                throw new Exception('Data de início não pode ser maior que a data de término');
            }
            $index = 0;
            do{
                echo '<tr valign="middle" bgcolor="'.bgcolor($index).'">';
                echo '<td><h3> - '.data2Br($beginDate);
                echo '</h3><br />';
                $arrClientes = searchClientByDate($beginDate);
                foreach($arrClientes as $key => $arrCliente){
                    echo '<div style="text-indent: 25px;">'.$arrCliente['nome'].'</div>';
                }
                echo '</td>';
                echo '</tr>';
                if(strtotime($beginDate)<=strtotime($endDate)){
                    $beginYear  = date('Y', strtotime($beginDate));
                    $beginMonth = date('m', strtotime($beginDate));
                    $beginDay   = date('d', strtotime($beginDate));
                    $beginDate = date("Y-m-d", mktime(0, 0, 0, $beginMonth, $beginDay + 1, $beginYear));
                }
                $index++;
            }while(strtotime($beginDate)<=strtotime($endDate));
        }catch(Exception $e){
            echo '<h1>Erro : ', $e->getMessage(), '</h1>';
        }
        echo '</table>';
    }
    
    ?>

     

  16. Em 10/03/2016 at 15:15, Bacelar disse:

    Olá, sou calouro no curso de SI e pretendo seguir na programação. Inicialmente eu pretendia ir para Java, mas refleti sobre meus interesses e não me limitando a, mas focando em web eu comecei a buscar sobre linguagens.

    Já tenho uma "boa" base em php, JavaScript, HTML e CSS, quando conheci e comecei a ouvir falar de Python, lendo sobre, a linguagem me fascinou, entretanto vi em inúmeros locais pessoas com a mesma queixa de que a linguagem te limita e só te permite a fazer as coisas de um único jeito, sem ser da forma que você deseja. Como nenhum dos que falarão isso tinham grande conhecimento em Python, resolvi pedir ajuda a programadores experientes da linguagem e gostaria de saber se essa afirmação de que a linguagem te limita é real ou apenas para aqueles que não a conhecem a fundo?

     

    Agradeço desde já.

    Salve,

    Brother, sua pergunta é muito interessante. Mas para responde-la preciso compreender seu conceito sobre limitação.

    Na minha humilde opinião e experiência posso lhe dizer que Python é uma das linguagens de programação mais flexível para se trabalhar. A linguagem possui um bom interpretador para os diferentes sistemas operacionais (Unix, Linux, Windows, Minix, etc...), inúmeros pacotes prontos para agilizar o desenvolvimento, uma curva de aprendizado que considero baixa e muito elegante (só o fato do código rodar se estiver identado já ajuda pra caramba).

    Agora, todos estes pontos foram obtidos através de minha experiência com a linguagem e do desafio que havia sido proposto no cenário.

    Preciso compreender melhor o seu cenário e pelo que descreveu no texto acima não acho a mesma limitada (tudo vai depender do seu desafio e conhecimento sobre a mesma).

    []s

  17. Salve,

    Estou enferrujado para C/C++ mas lá vai...

    
    /* programa.c */
    
    #include <stdlib.h>
    #include <stdio.h>
    
    int main()
    {
        //  determino o número de dias do mes
        const int DIAS_DO_MES = 26;
    
        //  monto um array de dias no mes
        int mes[DIAS_DO_MES];
    
        //  preenchendo as vendas nos dias do mês
        mes[0] = 0;         //  conceitualmente, não existe este dia no calendário :D
        mes[1] = 23;
        mes[2] = 54;
        mes[3] = 77;
        mes[4] = 13;
        mes[5] = 2;
        mes[6] = 26;
        mes[7] = 8999992;
        mes[8] = 40;
        mes[9] = 218;
        mes[10] = 2319;
        mes[11] = 3438;
        mes[12] = 99995;
        mes[13] = 3;
        mes[14] = 23;
        mes[15] = 23;
        mes[16] = 23;
        mes[17] = 23;
        mes[18] = 23;
        mes[19] = 23;
        mes[20] = 23;
        mes[21] = 23;
        mes[22] = 23;
        mes[23] = 23;
        mes[24] = 23;
        mes[25] = 23;
    
        //  aqui vamos guardar o dia do mes que teve a maior venda
        int dia_do_mes_maior_venda = 0;
    
        //  aqui vamos guardar o maior valor da venda
        int valor_da_maior_venda = 0;
    
        //  vamos declarar um contador
        int i = 0;
    
        do
        {
            if( mes[i] >= valor_da_maior_venda )
            {
                valor_da_maior_venda = mes[i];
                dia_do_mes_maior_venda = i;
            }
            i += 1;
        }while( i < DIAS_DO_MES);
    
        printf("O dia de maior venda foi o %d, com a quantidade de %d\n", dia_do_mes_maior_venda, valor_da_maior_venda);
    
        //  retorno do programa (sistema operacional)
        return 0;
    }

    Abraços

  18. Em 08/12/2015 at 23:50, pedroarigoni disse:

    Boa noite!

    Pessoal, sou novo aqui no fórum e venho aqui tentar esclarecer uma dúvida talvez nova por aqui, uma vez que não achei em outros tópicos. De antemão já peço perdão se estiver violando alguma regra do fórum.

    Eu trabalho algum tempo na área de TI, é bem verdade que domerei a começar a faculdade, me formei semestre passado 2015/1, e nunca trabalhei nem fiz estágio na área de programação, suporte e infra sempre foram minha área, atualmente sou analista de suporte, e a verdade é que não estou satisfeito com a área. Sempre me dei bem com as matérias relacionadas a lógica de programação e programação em si. Moro no interior do RJ, e trabalho no centro da cidade, tendo disponibilidade para tal, estou querendo começar ano que vem um curso de formação .Net completo na Caelum, abrangindo UML, banco de dados, C#, ASP e os principais frameworks. É um investimento relativamente alto e compreende a minha total mudança de área. Minha principal dúvida é, será que consigo vaga para desenvolvedor Jr somente com ensino superior recém completado e o curso da Caelum? Pois a maioria das vagas que vejo na área exigem experiência até para Jr.

    Me decidi pelo .NET, a princípio, por conhecer pessoas que trabalham como desenvolvedores .NET e ou analistas sistemas .NET e falarem sempre sobre abundância em vagas no RJ.

    Pergunto a vocês que já são desenvolvedores/analistas se acham que consigo ingressar no mercado somente com curso (outros que farei posteriormente), o ensino superior completo (para a área de infra infelizmente praticamente não tem peso) e  inglês avançado?? Já tenho conhecimento de PHP, JavaScript, MySQL, HTML e CSS, foi o que aprendi na faculdade. Java também sei um pouco, bem básico, mas como eu disse sem experiência na área.

    O que acham? Ficarei muito grato se compartilharem suas experiências e opiniões comigo.

     

    Boa noite. Abraços!

    Salve,

    Como todo início (sem exceções) é difícil em nossa vida/carreira tenho os seguintes conselhos para sua dúvida:

    1) Comece por algum lugar! 

    Não importa por onde!

    Mas porque não importa?

    Não importa porque será seu ponta pé inicial na área de desenvolvimento de software. 

    Aceite uma linguagem comum de mercado que tenha uma curva de aprendizado baixa e que tenha ofertas de trabalho para que você possa iniciar profissionalmente na área de desenvolvimento

    2) Nunca se acomode. Estude, estude e estude (não necessariamente nesta ordem [quando tiver bom, irá entender que o estudo é uma recursividade sem condição de parada])

    Não tenha medo de aprender coisas novas ou ver algo praticado em outros universos e trazer para seu dia-a-dia. Isso irá lhe fazer um desenvolvedor melhor

    3) Ajude outras pessoas (fórum, e-mail, irc, etc...)

    Por mais incrível que pareça, a seguinte frase é uma grande verdade (pelo menos em minha vida):

    Ao ensinar as pessoas, melhoramos nossa forma de aprender!

    4) Especialize-se na área! (mas isso será algo natural na sua jornada)

    Por mais importante e necessário que seja conhecer as diversas tecnologias e áreas ligadas ao desenvolvimento de software, será necessário ser especialista em alguma dela (banco de dados, uma linguagem de programação, uma IDE, um software para edição de imagem, cloud, etc...)

    5) Seja humilde

    Essa área de desenvolvimento tem um grande problema. O cara consegue resolver algo não trivial e já se sente um "capitão nascimento do BOPE". Começa a bate no peito dizendo que é florida, etc... e tals. Posso dizer que nestes anos rodados de mercado vi muitas pessoas se afastarem de gente assim (amizades de épocas de colégio terminarem porque o cara tirou uma nota mais alta na prova no curso de gestão de projetos e dizer que é melhor que o outro [e a empresa nem ai para os dois]).

    No mais... sempre use o Google para fazer suas pesquisa e, NUNCA... MAS NUNCA MESMO, esqueça seus valores/origem da pessoa que você é.

    Bom, acho que é isso por hora!

    Te desejo uma boa arrancada!

    []s

×
×
  • Criar Novo...