---
title: "Oskrivna regler om properties?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/109518-oskrivna-regler-om-properties"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Erik Juhlin"
published: "2004-08-18T12:53:57.000Z"
updated: "2004-08-19T07:44:03.000Z"
replies: 7
views: 685
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/109518-oskrivna-regler-om-properties"
---

# Oskrivna regler om properties?

## #1 — Erik Juhlin, 2004-08-18T12:53Z

Om jag vill ha en property med namnet FromName, som man både ska läsa och skriva till, så kan man ju skriva så här:

```
Public FromName As String
```

eller:

```
Private sFromName as String

Public Property Get FromName() As String
    FromName = sFromName
End Property
Public Property Let FromName(sValue As String)
    sFromName = sValue
End Property
```

Vad bör man använda? Finns det något som säger att det andra alternativet alltid är bäst..?

Permalänk: https://www.webforum.nu/p/109518

## #2 — ankath, 2004-08-18T19:17Z

Public använder du om den ska användas i fler än en sub/function.
Private om den bara ska användas i din nuvarande sub/function.

Permalänk: https://www.webforum.nu/p/1416027

## #3 — Erik Juhlin, 2004-08-18T19:40Z

Hehe, jo det vet jag... :e

Permalänk: https://www.webforum.nu/p/1416048

## #4 — Erik Juhlin, 2004-08-18T19:41Z

Eller snarare så att det är om det är i klaseen eller utanför...

Permalänk: https://www.webforum.nu/p/1416049

## #5 — ankath, 2004-08-18T20:04Z

Ah, jo det var nog så jag menade. Var ett tag sedan jag höll på med VB. En sub eller function är ju Private eller Public :r 
Men principen är densamma. Om du bara ska använda det i en class eller ett form så ska du använda Private. Ska du kunna använda det var som helst så använder du Public.

Nu ska det nog vara rätt  ;)

Permalänk: https://www.webforum.nu/p/1416088

## #6 — Phorpher, 2004-08-18T20:12Z

Re: Oskrivna regler om properties?

> **Erik Juhlin skrev:**
>
> Om jag vill ha en property med namnet FromName, som man både ska läsa och skriva till, så kan man ju skriva så här:
>
>
> ```
> Public FromName As String
> ```
>
> eller:
>
>
> ```
> Private sFromName as String
> 
> Public Property Get FromName() As String
>     FromName = sFromName
> End Property
> Public Property Let FromName(sValue As String)
>     sFromName = sValue
> End Property
> ```
>
> Vad bör man använda? Finns det något som säger att det andra alternativet alltid är bäst..?

Fördelen med properties är ju att du kan baka in valideringskod i dem och kasta exceptions om något går galet.

Permalänk: https://www.webforum.nu/p/1416099

## #7 — Erik Juhlin, 2004-08-19T07:12Z

Jo, men även om jag inte (nu) är instresserad av det. Bör man göra det som properties för att lätt kunna lägga in sånt i framtiden?

Permalänk: https://www.webforum.nu/p/1416258

## #8 — OveRRidE, 2004-08-19T07:44Z

Du kan ju skapa en sk. Read-Only property om du använder Get men inte Set. Det får du ju inte med en vanlig Public. Vidare, du kan få snyggare namn på dina props i ditt interface om man har som för vana att använda prefix på sina properties. Jag sätter alltid "p\_" eller "g\_", och även datatypsprefix, framför alla mina props som är interna, vill jag sedan göra dem till en del av det publika gränssnittet så är det kanske lite snyggare att ta bort dessa prefix och döpa variabeln till något mänskligt. 

Jag är mycket för Get och Set, det känns bättre om man vill bygga ut i framtiden, även om man bör betänka vilka variablar som är intressanta för sådant.

Permalänk: https://www.webforum.nu/p/1416272

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/109518-oskrivna-regler-om-properties
