Qual linguagem estudar?

[quote=DenysNunes]Em momento nenhum discordei de você que é importante a gente aprender algoritmos.
Estou dizendo que na área não é só isso.
E passar 4 anos em uma faculdade e sair sem saber o que é regra de negócio é froid.

Se quer ser cientista , vá para o MIT e depois vá trabalhar pra Intel/AMD ou sei la trabalhar em alguma fabrica de processador. (coisa que é lenda no brasil)
No brasil, TI é negócio e não desenvolvimento.
Se realmente quer trabalhar em alta tecnologia, suma daqui ! (rsrs)
Que pra min é o foco de Ciências (nen tanto) e Engenharia.

Se você tambem não conhecer analíse de requisito, regra de negócio, modelagem, patterns é certeza que você também será um escriba de código.
Considero essas matérias muito mais importantes para o desenvolvimento de um sistema.
Não quer ser escriba de código ? Estude e vire um engenheiro de soft ou arquiteto. (por isso digo que os melhores salários estão com os que não ficam conformados com seu bacharelado)

Acho que as instituições brasileiras de cursos superiores de TI ainda estão perdidas sobre o foco dos cursos.
Deveria acabar com todos os cursos e fazer igual a algumas modalidades que em determinado semestre ou ano o cara escolhe
sua especialidade.

Alguem pode me dizer em qual curso do brasil é pelo menos citado sobre padrões de projeto ou modelagem multidimensional (meu prof de bd mal sabia o que era isso) ?

Pelo menos O.O. eles passam um pouco … é por isso que temos mais programadores procedurais do que O.O.[/quote]

Oi,

Quando fiz o curso técnico foram seis meses só de lógica…Vou dar minha humilde opinião também.

Lógica de programação,algoritmos chamem do que quiser,quanto temos um enunciado é analisando que resolvemos o algoritmo,então (analíse de requisito, regra de negócio, modelagem) está diretamente relacionado,fica mais claro quando fazemos fluxogramas…

[quote=Anime]
Oi,

Quando fiz o curso técnico foram seis meses só de lógica…Vou dar minha humilde opinião também.

Lógica de programação,algoritmos chamem do que quiser,quanto temos um enunciado é analisando que resolvemos o algoritmo,então (analíse de requisito, regra de negócio, modelagem) está diretamente relacionado,fica mais claro quando fazemos fluxogramas…[/quote]

Todos na humilde opinião rsrsr

Anime , a definição de algoritmos é clara : “Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita.” (fonte : Wikipedia)

Ou seja , analise de um problema definido em sequências lógicas.
Porém , nada tem a ver com modelagem de dados (constraints , FM e etc) se você coloca isso em algoritmo quem fica chateado é o Edgar Codd.
Se você falar que MVC , DAO , Factory , são algo que derivam de algoritmos é feio.

Estou dizendo mais uma vez … é muito importante o aprendizado de algoritmo , sem algoritmos o cara não cria a “manha” de resolver problemáticas e tambem não aprende a base de todos os paradigmas de programação.

E a raíz da abertura desse tema , foi quando o rapaz la em cima disse que os melhores salários estão com quem sabe melhor implementar um algoritmo que pra min isso é balela.
O mundo não é feito só de algoritmo do mesmo jeito que não é feito só de java.

escolha as linguagens que há mais empregos, que dê mais R$, que têm mais leque de desenvolvimento, e que você acredita que iram demorar pra cair em desuso

linguagens que há empregos atualmente: java, c#, c++, c, phyton e php pra fazer uns freelas

mais é muito difícil aprender a usar uma linguagem, do mesmo jeito que é extremamente difícil usar um pincel pra fazer um bom desenho, ou um lápis pra criar uma boa história.

pelo que eu ouvi dizer em curso de designer gráfico, publicidade e propaganda, aprende-se muito pouco de photoshop, corel e ilustrator…

ou seja é apenas uma ferramenta, usar com criatividade que é a parte difícil…

[quote=DenysNunes][quote=Anime]
Oi,

Quando fiz o curso técnico foram seis meses só de lógica…Vou dar minha humilde opinião também.

Lógica de programação,algoritmos chamem do que quiser,quanto temos um enunciado é analisando que resolvemos o algoritmo,então (analíse de requisito, regra de negócio, modelagem) está diretamente relacionado,fica mais claro quando fazemos fluxogramas…[/quote]

Todos na humilde opinião rsrsr

Anime , a definição de algoritmos é clara : “Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita.” (fonte : Wikipedia)

Ou seja , analise de um problema definido em sequências lógicas.
Porém , nada tem a ver com modelagem de dados (constraints , FM e etc) se você coloca isso em algoritmo quem fica chateado é o Edgar Codd.
Se você falar que MVC , DAO , Factory , são algo que derivam de algoritmos é feio.

Estou dizendo mais uma vez … é muito importante o aprendizado de algoritmo , sem algoritmos o cara não cria a “manha” de resolver problemáticas e tambem não aprende a base de todos os paradigmas de programação.

E a raíz da abertura desse tema , foi quando o rapaz la em cima disse que os melhores salários estão com quem sabe melhor implementar um algoritmo que pra min isso é balela.
O mundo não é feito só de algoritmo do mesmo jeito que não é feito só de java.[/quote]

Dando sua humilde opinião também,né rsrs… :stuck_out_tongue:

Sabia que ia provocar polêmica,minha H opinião…

Em nenhum momento falei que algoritmos é modelagem de dados,disse sim que está diretamente relacionado,como?Quando analisamos um enunciado e desenvolvendo o algoritmo estamos modelando dados,não de um SGBD,mas com váriaveis…Enfim não vou ficar discutindo,pois cada um tem sua opinião…

[ ],s

oloco DenysNunes, a Anime só quis dizer que quando se aprende algoritmos fica mais facil entender Modelagem, MVC etc…

que é importante aprender algoritmos…,

acho que foi só isso, nada de que foi derivado etc…como vc disse

Nesse caso, você programa com o que? C e C++?
Certamente também não é com o Java.

[quote=DenysNunes]
E a raíz da abertura desse tema , foi quando o rapaz la em cima disse que os melhores salários estão com quem sabe melhor implementar um algoritmo que pra min isso é balela.
O mundo não é feito só de algoritmo do mesmo jeito que não é feito só de java.[/quote]

Só tem algoritmos sim, mas isso não quer dizer que todo algoritmo tenha o mesmo valor.

Anime , eu sei … eu que me expressei mal…
Quando quiz dizer modelagem , quis dizer de dados …

Sim o fluxograma ele é uma das bases para gerenciamento de fluxo de um sistema.

Falar nisso alguem ja viu o Windows Workflow Foundation e se tem algo parecido para o Java ?

Eu já vi, é sensacional. E nunca vi nada similar ao Java (mas nem procurei muito também).

Mas o objetivo de uma faculdade não é sair usando esse tipo de coisa, mas te ensinar a aprender. Geralmente alguém que faz 4 anos de uma faculdade pode não saber fazer um CRUD em uma linguagem da moda, enquanto alguém que fez um curso técnico nela, sai fazendo ótimas ferramentas e produz melhor no começo, desde que seja na área que ele formou.

Só que o analista logo aprende e também vai fazer o CRUD em pouco tempo. E se um dia mudar a linguagem, a tecnologia ou surgir um problema complexo, que requer uma análise de processos e arquitetura, ou até de atuar no negócio da empresa, ele vai ter uma base teórica muito mais forte pra tomar decisões. Ou você quer que a cada linguagem que surja a pessoa tenha de fazer outro curso técnico?

Mas concordo com você que tem faculdades e faculdades, cursos técnicos e cursos técnicos. E tem muita gente auto didata que consegue aprender por outras formas, sem ser curso técnico ou faculdade.

Quando entrei na faculdade o forte do mercado era o Clipper, todo mundo brigava que a gente estava aprendendo algoritmos e deveria aprender Clipper, que era o que o mercado mandava. Eu já trabalhava com Clipper e não me importei, mas muita gente fazia até reunião com o coordenador do curso querendo exigir que ensinassem Clipper no primeiro período. Até existia uma das matérias que ensinava Clipper, mas era lá na frente.

Só que quando nós saímos da faculdade, o auge era do VB e Delphi, se tivéssemos visto Clipper, já sairia da faculdade defasado. Tanto que muita gente que programava em Clipper na época, ganhava bem, não se adaptou às linguagens “para Windows” e saíram do mercado. Felizmente eu ganhei bastante dinheiro com Clipper na época, mas já tinha apostado no Delphi, que também me rendeu bons frutos. Aliás, até hoje o Delphi ainda me garante um bom salário, apesar de trabalhar também com Java. E se um dia o Java perder mercado, a gente muda de novo.

Exatamente. O que muita gente não compreende é que a faculdade não tenta formar o profissional do hoje. Ela precisa é formar um profissional que seja capaz de resolver os desafios do amanhã.

Até porque, seria uma péssima estratégia para o curso, uma vez que você deve garantir uma ementa consistente e qualidade ao longo dos anos. Lembre-se também que o aluno escolhe a ementa antes do curso, pelo menos quatro anos antes de se formar e apostar em tecnologias muito da moda podem significar que alguém que aprendeu algo no primeiro ano, já saia defasado no quarto.

A faculdade tem que garantir que aquele profissional vá conseguir se adaptar há mudanças não só tecnológicas, mas de carreira também: ele pode atuar num mercado de web, mas ser contratado pela indústria e fazer sistema de tempos reais depois de uns anos, ou mesmo decidir que quer fazer pesquisa científica.

E tudo isso envolve um profissional maleável, com facilidade de aprender e muito conhecimento de base.

Mas as faculdades não estão totalmente alheias ao mercado. Muitas já notaram a necessidade de profissionais também certificados em tecnologias da moda, e fazem associações com programas de certificação (a UTFPR tinha descontos para os programas da Oracle e MS quando eu estudava lá, a PUC/PR tem parceiria com a IBM e MS). Muitas oferecem disciplinas optativas, cursos de extensão, etc. Sem falar no grande número de especializações, inclusive em tecnologias específicas, que se tornam cada vez mais comuns hoje em dia.

[quote=douglaskd]oloco DenysNunes, a Anime só quis dizer que quando se aprende algoritmos fica mais facil entender Modelagem, MVC etc…

que é importante aprender algoritmos…,

acho que foi só isso, nada de que foi derivado etc…como vc disse[/quote]

Exatamente… :wink:

[quote=DenysNunes]Anime , eu sei … eu que me expressei mal…
Quando quiz dizer modelagem , quis dizer de dados …

Sim o fluxograma ele é uma das bases para gerenciamento de fluxo de um sistema.

Falar nisso alguem ja viu o Windows Workflow Foundation e se tem algo parecido para o Java ?[/quote]

ok… :wink:

Boas postagens do Vini e do Marco.

Eu programava em JS antes de saber do paradigma funcional. Mas depois de aprender programação funcional passei a entender e programar bem em Javascript e JavaFX e outras linguagens funcionais. E qualquer linguagem funcional já posso pegar o jeito de programar rápido.

É que nen eu disse , não existe um padrão … (até pq os mercados variam por região)
E as vezes isso acaba virando uma fonte de renda para própria instituição , na minha facu eles vendem o curso de Cobol e Mainframe como se fosse a quinta maravilha do mundo.

Resultado : Meu colega pagou R$1.800,00 no curso e disse que não aprende nada.

[quote]Aliás, até hoje o Delphi ainda me garante um bom salário, apesar de trabalhar também com Java. E se um dia o Java perder mercado, a gente muda de novo.
[/quote]

Por isso aquela hora discordei de vc , não é a instituição e ad vezes nen o que ele aprende que faz o profissional.
E sim sua maleabilidade com o mercado e as tecnologias.

[quote=DenysNunes][quote=Anime]
Oi,

Quando fiz o curso técnico foram seis meses só de lógica…Vou dar minha humilde opinião também.

Lógica de programação,algoritmos chamem do que quiser,quanto temos um enunciado é analisando que resolvemos o algoritmo,então (analíse de requisito, regra de negócio, modelagem) está diretamente relacionado,fica mais claro quando fazemos fluxogramas…[/quote]

Todos na humilde opinião rsrsr

Anime , a definição de algoritmos é clara : “Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita.” (fonte : Wikipedia)

Ou seja , analise de um problema definido em sequências lógicas.
Porém , nada tem a ver com modelagem de dados (constraints , FM e etc) se você coloca isso em algoritmo quem fica chateado é o Edgar Codd.
Se você falar que MVC , DAO , Factory , são algo que derivam de algoritmos é feio.

Estou dizendo mais uma vez … é muito importante o aprendizado de algoritmo , sem algoritmos o cara não cria a “manha” de resolver problemáticas e tambem não aprende a base de todos os paradigmas de programação.

E a raíz da abertura desse tema , foi quando o rapaz la em cima disse que os melhores salários estão com quem sabe melhor implementar um algoritmo que pra min isso é balela.
O mundo não é feito só de algoritmo do mesmo jeito que não é feito só de java.[/quote]

Quer saber de uma coisa, vou ser completamente contrário ao que você disse(numa boa claro :wink: )
Padrões de projetos e modelagem do que quer que seja são algoritmos maximizados e extrapolados. Quando você implementa um padrão implementa uma lógica que nada mais é que algoritmos. A própria natureza da computação é isso.

O que existem dentro de padrões e sistemas - algoritmos e mais algoritmos.

Sobre negócios, isso é uma área completamente diferente do que estamos conversando. :wink:

Gente eu acho que está havendo uma enorme confusão, vamos aos conceitos:

  1. Lógica: A lógica (do grego clássico λογική logos, que significa palavra, pensamento, ideia, argumento, relato, razão lógica ou princípio lógico), é uma ciência de índole matemática e fortemente ligada à Filosofia. Já que o pensamento é a manifestação do conhecimento, e que o conhecimento busca a verdade, é preciso estabelecer algumas regras para que essa meta possa ser atingida. Assim, a lógica é o ramo da filosofia que cuida das regras do bem pensar, ou do pensar correto, sendo, portanto, um instrumento do pensar.(fonte Wikipédia).

2)Algoritmo: Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita. (fonte Wikipédia).

3)Modelagem :1 Operação de modelar; modelação. 2 Bel-art Operação pela qual o escultor, o estatuário executa em gesso, barro ou qualquer substância maleável a sua obra, para depois ser fundida. 3 Metal Conjunto de processos e meios usados na feitura de modelos. M. de sólido, Inform: em computação gráfica, função que cria objetos tridimensionais com a aparência de sólidos, através de sombreamento.(fonte Dicionário Michaelis).
Modelagem de software é a atividade de construir modelos que expliquem as características ou o comportamento de um software ou de um sistema de software. Na construção do software os modelos podem ser usados na identificação das características e funcionalidades que o software deverá prover (análise de requisitos), e no planejamento de sua construção. (fonte Wikipédia).

Usando as tres definições eu diria que: “Eu uso lógica para modelar um problema que cuja solução eu obtenho implemento um algoritmo!”

As três coisas estão unidas, mas cada um tem um carater distintos e são importanticimas para o desenvovimento de um sofware.

[quote=DenysNunes]
O mundo não é feito só de algoritmo do mesmo jeito que não é feito só de java.[/quote]

[(Fusão Nuclear = hidrogênio -> hélio -> carbono) = Vida na terra?]
:wink:

Sério, é uma brincadeira, mas todas as coisas no planeta e fora dele são sistemáticas.

[quote=x@ndy]Gente eu acho que está havendo uma enorme confusão, vamos aos conceitos:

  1. Lógica: A lógica (do grego clássico λογική logos, que significa palavra, pensamento, ideia, argumento, relato, razão lógica ou princípio lógico), é uma ciência de índole matemática e fortemente ligada à Filosofia. Já que o pensamento é a manifestação do conhecimento, e que o conhecimento busca a verdade, é preciso estabelecer algumas regras para que essa meta possa ser atingida. Assim, a lógica é o ramo da filosofia que cuida das regras do bem pensar, ou do pensar correto, sendo, portanto, um instrumento do pensar.(fonte Wikipédia).

2)Algoritmo: Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita. (fonte Wikipédia).

3)Modelagem :1 Operação de modelar; modelação. 2 Bel-art Operação pela qual o escultor, o estatuário executa em gesso, barro ou qualquer substância maleável a sua obra, para depois ser fundida. 3 Metal Conjunto de processos e meios usados na feitura de modelos. M. de sólido, Inform: em computação gráfica, função que cria objetos tridimensionais com a aparência de sólidos, através de sombreamento.(fonte Dicionário Michaelis).
Modelagem de software é a atividade de construir modelos que expliquem as características ou o comportamento de um software ou de um sistema de software. Na construção do software os modelos podem ser usados na identificação das características e funcionalidades que o software deverá prover (análise de requisitos), e no planejamento de sua construção. (fonte Wikipédia).

Usando as tres definições eu diria que: “Eu uso lógica para modelar um problema que cuja solução eu obtenho implemento um algoritmo!”

As três coisas estão unidas, mas cada um tem um carater distintos e são importanticimas para o desenvovimento de um sofware.

[/quote]

O 1 e o 3 necessitam de uma “sequência finita de instruções” para serem realizados. Não há como fugir deles. Até na culinária usamos algoritmos. O que é preciso entender é que o estudo dos algoritmos tem por objetivo melhorar e otimizar qualquer procedimento que possa ter caráter algébrico, ou seja o estudo deles melhoram a nossa maneira de lidar com problemas.

O algoritmo de vida na terra do Júlio merece entrar na história do GUJ. heheheheh Perfeito :lol: :lol:

Agora, faculdade hoje ensinar Cobol pra mainframe é dureza. Como optativa posso até concordar, já que tem muito lugar em São Paulo com falta justamente desse perfil e a até pagam curso de Cobol na IBM pra quem quiser trabalhar com Mainframe. (já recebi proposta, 70 reais a hora, mas não animei). hehehe