3
respostas

Função

Eu programo em PHP / Codeigniter e tenho um helper com as funcões que uso dentro do projeto, exemplo:

calculcarIdade($anonascimento)

Como ficaria estes tipos de funções dentro do c# / .NET ? crio uma classe para cada função?

3 respostas

Olá Marcelo!

Cada classe pode ter várias funções, desde que elas façam parte da responsabilidade da classe.

As funções CalcularIPTU(); e CalcularICMS(); poderiam fazer parte da classe Impostos. Mas não faria sentido a função CalcularIPTU(); fazer parte da classe ApplicationContext (que é uma classe relacionada a comunicação com banco de dados).

Espero que tenha ficado clara a explicação. Mas no geral, a classe tem um responsabilidade e as funções são relativas a essa responsabilidade.

Bons estudos!

Mais e no caso de funções por exemplo:

formatarData() -> para formato a data para o formato brazil?

tempoAgora() -> mostra o tempo de uma data até agora, ex. "Há 3 minutos", "Há 3 horas e 15 minutos", etc...

Como ficaria neste caso? onde criaria esta função, visto que preciso usar ela em dentro dos controller, models e views

Neste caso você poderia criar uma pasta chamada Helper e dentro dela um arquivo chamado DatasHelper.cs. Ou então uma pasta chamada Formatters com o arquivo DatasFormatter.cs.

Você também pode separar seu código em pastas (namespaces) de acordo com o nível de separação de código que deseja para a aplicação. Um exemplo meu é colocar os arquivos que tem a ver com a conexão com banco de dados em uma pasta chamada Infra. E fazer acesso ao banco de dados por meio de repositórios dentro de uma pasta chamada Repository.

Depois disso, é só incluir o namespace com o using para usar esses códigos.

Por mais que tenha um "padrão", você precisa separar seu código em uma estrutura que faça sentido para você.